gpt4 book ai didi

c - 如何使用 cJSON 读取字符串

转载 作者:太空宇宙 更新时间:2023-11-04 08:19:10 25 4
gpt4 key购买 nike

我正在使用 cJSON但不知何故我无法让字符串工作:

void myfile()
{
cJSON* type = NULL;
char text1[]="{\n\"name\": \"Jack (\\\"Bee\\\") Nimble\", \n\"format\": {\"type\": \"rect\", \n\"width\": 1920, \n\"height\": 1080, \n\"interlace\": false,\"frame rate\": 24\n}\n}";
cJSON * root = cJSON_Parse(text);
cJSON * format = cJSON_GetObjectItem(root,"format");
int framerate = cJSON_GetObjectItem(format,"frame rate")->valueint;
type = cJSON_GetObjectItem(format,"type")->valuestring;
char * rendered = cJSON_Print(root);
cJSON_Delete(root);
printf("rate = %d, type = %s \n", framerate, type) ;
}

我只得到垃圾。我也试过这个,但它甚至没有编译:

char *type[] = cJSON_GetObjectItem(format,"type")->valuestring;

最佳答案

char text[]="{\n\"name\": \"Jack (\\\"Bee\\\") Nimble\", \n\"format\": {\"type\":       \"rect\", \n\"width\":      1920, \n\"height\":     1080, \n\"interlace\":  false,\"frame rate\": 24\n}\n}";
cJSON * root = cJSON_Parse(text);
cJSON * format = cJSON_GetObjectItem(root,"format");
cJSON * type = cJSON_GetObjectItem(format,"type");
int framerate = cJSON_GetObjectItem(format,"frame rate")->valueint;
char * rendered = cJSON_Print(root);
printf("%s\n", rendered);
printf("rate = %d, type = %s \n", framerate, type->valuestring);
free(rendered);
cJSON_Delete(root);

关于c - 如何使用 cJSON 读取字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34097942/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com