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

c 解析動態類JSON

榮姿康2年前7瀏覽0評論

JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,它將數據以鍵值對的形式進行描述,支持多種數據類型,包括數字、字符串、數組和對象等。在C語言中,我們可以使用第三方庫cJSON來解析動態類JSON。

#include <stdio.h>
#include <stdlib.h>
#include "cJSON.h"
int main() {
char* json_string = "{\"name\":\"Jack\",\"age\":20,\"hobbies\":[\"reading\",\"swimming\",\"traveling\"]}";
cJSON* root = cJSON_Parse(json_string);
if (!root) {
printf("Error before: [%s]\n", cJSON_GetErrorPtr());
return 1;
}
cJSON* name = cJSON_GetObjectItemCaseSensitive(root, "name");
cJSON* age = cJSON_GetObjectItemCaseSensitive(root, "age");
cJSON* hobbies = cJSON_GetObjectItemCaseSensitive(root, "hobbies");
printf("Name: %s\n", name->valuestring);
printf("Age: %d\n", age->valueint);
cJSON* hobby;
cJSON_ArrayForEach(hobby, hobbies) {
printf("Hobby: %s\n", hobby->valuestring);
}
cJSON_Delete(root);
return 0;
}

以上是一個簡單的cJSON示例,我們從一個JSON字符串中解析出數據并進行了輸出。通過使用cJSON庫,我們可以輕松地解析動態類JSON,并將其轉換為C語言中的數據類型進行操作。需要注意的是,cJSON只支持動態類JSON,即JSON對象的鍵可以是任意字符串,而靜態類JSON則必須使用雙引號括起來。