xuanxi 发表于 2017-12-21 07:38:17

Redis接口的调用

1、hiredis是redis数据库的C接口,目录为/redis-3.2.6/deps/hiredis  2、示例代码如下:
  #include <stdio.h>
  #include <stdlib.h>
  #include <stddef.h>
  #include <stdarg.h>
  #include <string.h>
  #include <assert.h>
  #include "hiredis.h"
  int main()
  {
  //连接redis
  redisContext* c = redisConnect("127.0.0.1", 6379);
  if ( c->err)
  {
  redisFree(c);
  printf("Connect to redisServer faile\n");
  return -1;
  }
  printf("Connect to redisServer Success\n");
  const char* setCommand = "set name andy";
  redisReply* r = (redisReply*)redisCommand(c, setCommand);
  if( NULL == r)
  {
  printf("Execut setCommand failure\n");
  redisFree(c);
  return -1;
  }
  if( !(r->type == REDIS_REPLY_STATUS && strcasecmp(r->str,"OK")==0))
  {
  printf("Failed to execute command[%s]\n",setCommand);
  freeReplyObject(r);
  redisFree(c);
  return -1;
  }
  freeReplyObject(r);
  printf("Succeed to execute command[%s]\n", setCommand);
  const char* getCommand = "get name";
  r = (redisReply*)redisCommand(c, getCommand);
  if ( r->type != REDIS_REPLY_STRING)
  {
  printf("Failed to execute command[%s]\n",getCommand);
  freeReplyObject(r);
  redisFree(c);
  return -1;
  }
  printf("Succeed to execute command[%s]\n", getCommand);
  printf("The value of 'name' is %s\n", r->str);
  freeReplyObject(r);
  redisFree(c);
  return 0;
  }
  3、编译,运行如下:
# g++ -o main main.cpp libhiredis.a
# ./main
  Connect to redisServer Success
  Succeed to execute command
  Succeed to execute command
  The value of 'name' is andy
页: [1]
查看完整版本: Redis接口的调用