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

c json 遍歷屬性

張吉惟2年前8瀏覽0評論

JSON是一種常見的數據存儲格式,而C作為一種高性能的編程語言,具有快速讀寫JSON數據的能力。當我們讀取JSON數據時,需要遍歷其屬性,以便我們能夠獲取所需的數據。

在C語言中,我們可以使用 cJSON 庫來處理JSON數據。這個庫提供了很多API來遍歷JSON數據的屬性。

// 假設我們有如下JSON數據
{
"name": "Tom",
"age": 18,
"email": "tom@example.com",
"phone": {
"home": "111-111-1111",
"work": "222-222-2222"
},
"hobbies": ["reading", "swimming"]
}
// 讀取JSON數據
char* data = "{\"name\":\"Tom\",\"age\":18,\"email\":\"tom@example.com\",\"phone\":{\"home\":\"111-111-1111\",\"work\":\"222-222-2222\"},\"hobbies\":[\"reading\",\"swimming\"]}";
cJSON* root = cJSON_Parse(data);
// 遍歷JSON數據屬性
cJSON* name = cJSON_GetObjectItem(root, "name");
printf("Name: %s\n", name->valuestring); // 輸出 Name: Tom
cJSON* age = cJSON_GetObjectItem(root, "age");
printf("Age: %d\n", age->valueint); // 輸出 Age: 18
cJSON* email = cJSON_GetObjectItem(root, "email");
printf("Email: %s\n", email->valuestring); // 輸出 Email: tom@example.com
cJSON* phone = cJSON_GetObjectItem(root, "phone");
cJSON* home = cJSON_GetObjectItem(phone, "home");
printf("Home Phone: %s\n", home->valuestring); // 輸出 Home Phone: 111-111-1111
cJSON* work = cJSON_GetObjectItem(phone, "work");
printf("Work Phone: %s\n", work->valuestring); // 輸出 Work Phone: 222-222-2222
cJSON* hobbies = cJSON_GetObjectItem(root, "hobbies");
cJSON* hobby = NULL;
cJSON_ArrayForEach(hobby, hobbies){
printf("Hobby: %s\n", hobby->valuestring); // 輸出 Hobby: reading 和 Hobby: swimming
}
// 釋放JSON數據
cJSON_Delete(root);

以上代碼演示了如何遍歷JSON數據的屬性。請注意,cJSON 庫可用的函數非常豐富,允許我們使用快速,靈活且可靠的方式讀寫JSON數據。