2

コマンドをredis-serverに渡すためにhiredisを使用します。私のコード:

redisContext* c = redisConnect("127.0.0.1", 6379);
char y[15]={"pointx"};
strcat(y," 2");

redisReply* reply= (redisReply*)redisCommand(c,"set %s",y);
printf("%s\n", reply->str);

出力は「ERR 'set' コマンドの引数の数が間違っています」です。ただし、次のようにコードを変更すると機能します。

redisContext* c = redisConnect("127.0.0.1", 6379);
char y[15]={"pointx"};
char x[5] = {"2"};
redisReply* reply= (redisReply*)redisCommand(c,"set %s %s",y,x);
printf("%s\n", reply->str);

出力は「OK」です。どうして??

4

1 に答える 1