欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

c 復雜格式json

錢諍諍1年前11瀏覽0評論

JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,常用于前后端數據傳遞。在C語言中,可以通過第三方庫cJSON來解析和生成JSON格式的數據。cJSON支持基本數據類型如字符串、數字、布爾值等,還支持數組和對象。這里介紹一下如何使用cJSON處理復雜格式的JSON數據。

在cJSON中,對象是通過cJSON_CreateObject()函數創建的。對象中可以包含多個鍵值對,鍵和值可以是字符串、數字、布爾值等基本數據類型,也可以是數組或其他對象。

cJSON* obj = cJSON_CreateObject();
cJSON_AddItemToObject(obj, "name", cJSON_CreateString("json"));
cJSON* arr = cJSON_CreateArray();
cJSON_AddItemToArray(arr, cJSON_CreateNumber(1));
cJSON_AddItemToArray(arr, cJSON_CreateNumber(2));
cJSON_AddItemToObject(obj, "array", arr);

上面的代碼中,我們創建了一個對象obj,包含一個字符串類型的鍵“name”和一個數組類型的鍵“array”。數組中包含兩個數字類型的元素1和2。如果要打印出這個對象的JSON格式,可以使用cJSON_Print()函數。

char* json_str = cJSON_Print(obj);
printf("%s\n", json_str);

打印出來的JSON字符串如下:

{
"name": "json",
"array": [1, 2]
}

除了基本數據類型和數組、對象類型,cJSON還支持NULL和未定義類型,可以通過cJSON_CreateNull()和cJSON_CreateUndefined()函數來創建。

cJSON* obj = cJSON_CreateObject();
cJSON_AddItemToObject(obj, "null", cJSON_CreateNull());
cJSON_AddItemToObject(obj, "undefined", cJSON_CreateUndefined());

最終生成的JSON字符串如下:

{
"null": null,
"undefined": undefined
}

總結一下,cJSON可以處理復雜格式的JSON數據,提供了豐富的數據類型,并且易于使用。如果需要在C語言中處理JSON數據,cJSON是一個不錯的選擇。