码迷,mamicode.com
首页 > 其他好文 > 详细

Redis接口的调用

时间:2017-02-11 19:53:33      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:++   include   int   har   cee   name   success   disco   getc   

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、编译,运行如下:
    [root@localhost hiredis]# g++ -o main main.cpp libhiredis.a
    [root@localhost hiredis]# ./main
    Connect to redisServer Success
    Succeed to execute command[set name andy]
    Succeed to execute command[get name]
    The value of ‘name‘ is andy

Redis接口的调用

标签:++   include   int   har   cee   name   success   disco   getc   

原文地址:http://www.cnblogs.com/nzbbody/p/6389618.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!