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

c json遍歷鍵值

林雅南1年前8瀏覽0評論

C JSON 是一種能夠處理、創建和解析 JSON 數據的 C 語言庫,它提供了一組簡單易用的 API,并且能夠與許多操作系統和編譯器進行兼容。如果你需要在 C 語言中解析 JSON 數據或創建 JSON 數據,那么 C JSON 庫可能是一個不錯的選擇。

在 C JSON 中,遍歷 JSON 數據的鍵值是一項常見的任務,下面是一段示例代碼,用于遍歷 JSON 數據中的所有鍵值:

#include <stdio.h>
#include <stdlib.h>
#include <cjson/cJSON.h>
void traverse(cJSON *json)
{
cJSON *item = NULL;
if (json == NULL) {
return;
}
switch (json->type) {
case cJSON_Object:
cJSON_ArrayForEach(item, json) {
traverse(item);
}
break;
case cJSON_Array:
cJSON_ArrayForEach(item, json) {
traverse(item);
}
break;
case cJSON_String:
printf("%s : %s\n", json->string, json->valuestring);
break;
case cJSON_Number:
printf("%s : %g\n", json->string, json->valuedouble);
break;
case cJSON_True:
printf("%s : true\n", json->string);
break;
case cJSON_False:
printf("%s : false\n", json->string);
break;
case cJSON_Null:
printf("%s : null\n", json->string);
break;
default:
break;
}
}
int main()
{
char *json_data = "{\"name\":\"Jack\",\"age\":25,\"gender\":\"Male\",\"hobbies\":[\"basketball\",\"football\",\"swimming\"]}";
cJSON *json = cJSON_Parse(json_data);
traverse(json);
cJSON_Delete(json);
return 0;
}

代碼中的 traverse 函數,通過遞歸遍歷 JSON 數據中的所有元素,如果元素的類型是字符串、數字、真、假或 NULL,就輸出該元素的鍵值對到控制臺中,并且將有子元素的元素遞歸地傳遞給 traverse 函數,直到完成整個遍歷操作。