0
我试图通过解析然而在JSON的第一个数字不断得到变为0第一个数字是始终为0
我使用cJSON一个网络服务器一个CGI文件接收的JSON文件“VE由代码一小段我使用来测试此其中:
int main(int argc, char *argv[])
{
cJSON *pstReq;
char *pcReq = getenv("QUERY_STRING");
printf("Content-Type: application/json\n\n");
URLDecode(pcReq) /* Decodes the query string to JSON string */
pstReq = cJSON_Parse(pstReq);
printf("%d\n", cJSON_GetObjectItem(pstReq, "test")->valueint);
printf("%d\n", cJSON_GetObjectItem(pstReq, "test2")->valueint);
printf(cJSON_Print(pstReq));
return EXIT_SUCCESS;
}
跑过JSON {‘测试’:123,‘TEST2’:123}到此通过查询字符串导致程序输出:
0
123
{"test":0, "test2":123}
我完全不知道我在这里做错了什么,如果有人能给我一些关于这个问题的想法,我会非常感激。
感谢您的回复,我试着运行您发布在我的Linux机器上的第一段代码,并确保足够的一切按预期运行。然而,当我添加了printf(“Content-Type:application/json \ n \ n”);'并尝试在系统上运行它时,我原来一直在运行该程序(Cubox)我以前有过输出。这让我相信代码实际上是正确的,问题是由与Cubox相关的其他因素以及它的设置引起的。 – KGB 2015-02-12 18:44:58