c连接redis
1. 安装启动redis2. 安装redis c语言客户端
#include <stdio.h>
#include <stdlib.h>
#include <hiredis.h>
int main(int argc, char **argv) {
// if (argc < 3) {
// printf("usage: connRedis hostname port password\n");
// return 1;
// }
// char *hostname = argv;
// int port = atoi(argv);
// char *password = argv;
char *hostname = "127.0.0.1";
int port = 6379;
char *password = "";
redisContext *conn;
redisReply *reply;
struct timeval timeout = {1, 500000};
conn = redisConnectWithTimeout(hostname, port, timeout);
// conn erro
if (conn == NULL || conn->err) {
if (conn) {
printf("connection error %s\n", conn->errstr);
exit(1);
} else {
printf("cannot alloc redis context\n");
exit(1);
}
}
// auth
reply = redisCommand(conn, "AUTH %s", password);
printf("auth is %s\n", reply->str);
freeReplyObject(reply);
// set
reply = redisCommand(conn, "set %s %s", "name", "hello world");
printf("set is %s\n", reply->str);
freeReplyObject(reply);
// get
reply = redisCommand(conn, "get name");
printf("name :%s\n", reply->str);
freeReplyObject(reply);
// free conn
redisFree(conn);
return 0;
}编译: gcc connRedis.c -o connRedis -I /usr/local/include/hiredis -lhiredis
这里用clion + cmake编译,运行。需要在CMakeList.txt中添加动态库hiredis
link_libraries(hiredis)
add_executable(connRedis.c connRedis)
注意,link要放前面
文档来源:51CTO技术博客https://blog.51cto.com/u_2498536/3304165
页:
[1]