Program received signal SIGSEGV, Segmentation fault.
json_object_get_object (jso=0xfffffffc) at json_object.c:255
255 json_object.c: No such file or directory.
in json_object.c有没有人能告诉我,可能出了什么问题。
发布于 2012-03-12 06:27:28
您想要测试以下内容:
if (is_error(jso)) {
// handle error here
}在做任何其他事情之前。无论出于什么原因,该库都会返回一个伪指针,而不是null,并且没有真正记录这一点(is_error是在json/bits.h中定义的)。
发布于 2012-01-26 10:26:47
分段错误表明内存管理不善,例如双free,或者在您的例子中是一个未终止的字符串,缓冲区溢出,或者只是json-c中的内存管理错误。值得注意的是,内存损坏可能发生在分段错误之前,并且可能在解码JSON输入时随机出现。
我强烈建议在调试器(如gdb )和/或内存访问检查器(如valgrind )下运行该程序,该检查器将在段故障之前发现内存管理错误。
发布于 2013-02-13 07:02:04
尝试使用json_tokener_parse_verbose()而不是json_tokener_parse()。
这对我很有效,因为json_tokener_parse_verbose()返回一个空指针,然后被is_error()拾取。
https://stackoverflow.com/questions/9013266
复制相似问题