色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

c json 讀取

錢瀠龍2年前8瀏覽0評論

CJSON是一個輕量級的JSON解析庫,它的主要功能是將JSON文本轉化為C語言的數據結構。CJSON支持從文件和字符串中讀取JSON數據,可以使用簡單的API操作JSON數據,方便開發。

#include "cJSON.h"
#include#includeint main() {
const char *json_string = "{\"name\":\"Tom\",\"age\":18,\"hobby\":[\"basketball\",\"music\"]}";
cJSON *json = cJSON_Parse(json_string);
if (!json) {
printf("Error before: [%s]\n", cJSON_GetErrorPtr());
return 1;
}
cJSON *name = cJSON_GetObjectItem(json, "name");
printf("name: %s\n", name->valuestring);
cJSON *age = cJSON_GetObjectItem(json, "age");
printf("age: %d\n", age->valueint);
cJSON *hobby = cJSON_GetObjectItem(json, "hobby");
int size = cJSON_GetArraySize(hobby);
printf("hobby: ");
for (int i=0;i<size;i++) {
cJSON *hobby_item = cJSON_GetArrayItem(hobby, i);
printf("%s ", hobby_item->valuestring);
}
printf("\n");
return 0;
}

以上是一個簡單的例子,展示了CJSON讀取JSON的基本用法。首先定義了一個JSON字符串,然后使用cJSON_Parse函數將字符串轉為JSON對象。如果轉換失敗,則輸出錯誤信息;如果成功,則可以使用cJSON_GetObjectItem函數獲取JSON對象中的元素。

需要注意的是,獲取元素的返回值是一個cJSON類型的指針,可以使用valuestring、valueint、valuefloat等成員獲取具體的值,也可以使用對應的數組訪問函數獲取數組元素。最后使用cJSON_Delete函數釋放內存。