from :
hiredis是redis資料庫的c介面,目前只能在linux下使用,幾個基本的函式就可以操作redis資料庫了。
函式原型:rediscontext *redisconnect(const char *ip, int port)
說明:該函式用來連線redis資料庫,引數為資料庫的ip位址和埠,一般redis資料庫的埠為6379
該函式返回乙個結構體rediscontext。
函式原型:void *rediscommand(rediscontext *c, const char *format, ...);
說明:該函式執行命令,就如sql資料庫中的sql語句一樣,只是執行的是redis資料庫中的操作命令,第乙個引數為連線資料庫時返回的rediscontext,剩下的引數為變參,就如c標準函式printf函式一樣的變參。返回值為void*,一般強制轉換成為redisreply型別的進行進一步的處理。
函式原型void freereplyobject(void *reply);
說明:釋放rediscommand執行後返回的redisreply所占用的記憶體
函式原型:void redisfree(rediscontext *c);
說明:釋放redisconnect()所產生的連線。
下面用乙個簡單的例子說明:
[cpp]view plain
copy
#include
#include
#include
#include
#include
#include
#include
void
dotest()
printf("connect to redisserver success\n"
);
const
char
* command1 =
"set stest1 value1"
; redisreply* r = (redisreply*)rediscommand(c, command1);
if( null == r)
if( !(r->type == redis_reply_status && strcasecmp(r->str,
"ok"
)==0))
freereplyobject(r);
printf("succeed to execute command[%s]\n"
, command1);
const
char
* command2 =
"strlen stest1"
; r = (redisreply*)rediscommand(c, command2);
if( r->type != redis_reply_integer)
intlength = r->integer;
freereplyobject(r);
printf("the length of 'stest1' is %d.\n"
, length);
printf("succeed to execute command[%s]\n"
, command2);
const
char
* command3 =
"get stest1"
; r = (redisreply*)rediscommand(c, command3);
if( r->type != redis_reply_string)
printf("the value of 'stest1' is %s\n"
, r->str);
freereplyobject(r);
printf("succeed to execute command[%s]\n"
, command3);
const
char
* command4 =
"get stest2"
; r = (redisreply*)rediscommand(c, command4);
if( r->type != redis_reply_nil)
freereplyobject(r);
printf("succeed to execute command[%s]\n"
, command4);
redisfree(c);
} int
main()
執行結果為:
對hiredis介面的封裝
tg redis.h ifndef tg redis h define tg redis h include include include include string include include includestruct tg redis param class tg redis resu...
Redis C 快取的使用
nuget收索stackexchange.redis,點選安裝即可,新增的第三方命名空間 using stackexchange.redis 二 stackexchange.redis使用 使用前提是有redis服務端 linux redis的安裝可檢視此文 1 鍵值的訪問 static void ...
Hiredis 基本使用
0.前言 hiredis是乙個redis的c客戶端庫函式,基本實現了redis的協議的最小集。這裡對hiredis的api作基本的介紹以及應用,主要參考hiredis的readme檔案以及相關原始碼。1.同步api rediscontext,該庫的上下文環境。1 context for a conn...