#include <iostream>
#include <hiredis/hiredis.h>
using namespace std;
int main(){
redisContext *c = redisConnect("127.0.0.1",6379);
if(c->err){
redisFree(c);
cout<<"connect to redis fail"<<endl;
return 1;
}
cout<<"connect to redis success"<<endl;
char buff[10] ;
for (int i = 0; i < 10; i++) {
buff[i] = i ;
}
int paramN = 3 ; // 命令参数个数
string cmd = "set" ;
string key = "name" ;
const char* parms[] = {cmd.data() , key.data(), buff} ; // 命令
size_t paramsLens[] = {3, 4, 10} ; // 命令中每个参数的个数
redisReply *r = (redisReply*)redisCommandArgv(c, paramN , parms , paramsLens) ;
freeReplyObject(r) ;
cout << r->str << endl ;
cmd = "get" ;
paramN = 2 ;
parms[0] = cmd.data() ;
r = (redisReply*)redisCommandArgv(c, paramN , parms , paramsLens) ;
cout<<r->str<<endl;
cout << r->type << endl ;
cout << r->len << endl ;
for(int i = 0 ;i < r->len; i++){
cout <<(int)r->str[i] ;
}
cout << endl ;
freeReplyObject(r) ;
redisFree(c);
return 0;
}
编译: g++ redisCommandArgv.cpp -lhiredis