我有一个简单的memcache代码:::::
memcached_return * rc = NULL;
char * sur =“SURBHI”;
memcached_set(cacheClient,“SB”,strlen(“SB”),sur,strlen(sur),(time_t)0,(uint32_t)0);
char * value1;
memcached_get(cacheClient,“SB”,strlen(“SB”),6,(uint32_t)0,rc);
对memcache_get的调用会产生分段错误。 调试器给出了以下内容:
来自/usr/lib/libmemcached.so.5的memcached_get_by_key()中的有没有人遇到类似的问题,或对解决方案有任何想法?
答案 0 :(得分:1)
memcached_get
的最后三个参数应该是指针,您可以通过它获取值,长度和错误代码等信息。见下文:
char *key = "key";
size_t value_length;
memcached_return_t ret;
uint32_t flags;
char *value = memcached_get(memc, key, strlen(key), &value_length, &flags, &ret);
if (ret == MEMCACHED_SUCCESS) {
// ok
} else {
// error
}