下面是一个使用 C 语言编写的 Redis List 类型测试例程:

#include <stdio.h>
#include <stdlib.h>
#include <hiredis/hiredis.h>

int main() {
    redisContext *context = redisConnect("127.0.0.1", 6379);
    if (context == NULL || context->err) {
        if (context) {
            printf("Error: %s\n", context->errstr);
            redisFree(context);
        } else {
            printf("Can't allocate redis context\n");
        }
        return 1;
    }

    redisReply *reply = redisCommand(context, "DEL mylist");

    reply = redisCommand(context, "LPUSH mylist value1");
    freeReplyObject(reply);
    
    reply = redisCommand(context, "LPUSH mylist value2");
    freeReplyObject(reply);
    
    reply = redisCommand(context, "LPUSH mylist value3");
    freeReplyObject(reply);
    
    reply = redisCommand(context, "LRANGE mylist 0 -1");
    if (reply->type == REDIS_REPLY_ARRAY) {
        for (int i = 0; i < reply->elements; i++) {
            printf("%s\n", reply->element[i]->str);
        }
    }
    freeReplyObject(reply);

    redisFree(context);
    return 0;
}

这个例程使用了 hiredis 库来连接 Redis 服务器。首先,我们使用 redisConnect 函数来连接本地的 Redis 服务器。然后,我们使用 redisCommand 函数来执行 Redis 命令。在这个例程中,我们使用了以下命令:

  • DEL mylist:删除名为 'mylist' 的 List。
  • LPUSH mylist value1:将值 'value1' 插入到 'mylist' 的头部。
  • LPUSH mylist value2:将值 'value2' 插入到 'mylist' 的头部。
  • LPUSH mylist value3:将值 'value3' 插入到 'mylist' 的头部。
  • LRANGE mylist 0 -1:返回 'mylist' 中的所有元素。

最后,我们使用 freeReplyObject 函数来释放返回的结果对象,并使用 redisFree 函数来关闭与 Redis 服务器的连接。

编译并运行上述代码,你将会得到以下输出:

value3
value2
value1

这表示成功地将三个值插入到了 List 中,并按照逆序打印出了所有元素。

Redis List 类型 C 语言测试例程

原文地址: https://www.cveoy.top/t/topic/bQWM 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录