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

c 獲取json下的字段

江奕云2年前9瀏覽0評論

在使用C語言處理JSON格式數據時,經常需要獲取JSON對象中的某些字段,下面我們來介紹如何使用C語言獲取JSON下的字段。

/* 要獲取的JSON格式數據 */
{
"name": "小明",
"age": 18,
"gender": "男",
"score": {
"math": 95,
"chinese": 90,
"english": 85
}
}

首先,我們需要引入cJSON庫,該庫提供了JSON解析和生成的API,可以輕松處理JSON格式數據。以下是獲取JSON對象中的某些字段的代碼樣例。

#include "cJSON.h"
#includeint main()
{
char *json_data = "{\"name\": \"小明\",\"age\": 18,\"gender\": \"男\",\"score\": {\"math\": 95,\"chinese\": 90,\"english\": 85}}";
cJSON *root = cJSON_Parse(json_data); // 解析JSON數據
// 獲取name字段
cJSON *name = cJSON_GetObjectItem(root, "name");
printf("name: %s\n", name->valuestring);
// 獲取age字段
cJSON *age = cJSON_GetObjectItem(root, "age");
printf("age: %d\n", age->valueint);
// 獲取score下的chinese字段
cJSON *score = cJSON_GetObjectItem(root, "score");
cJSON *chinese = cJSON_GetObjectItem(score, "chinese");
printf("chinese score: %d\n", chinese->valueint);
cJSON_Delete(root); // 釋放JSON對象內存空間
return 0;
}

在以上代碼中,我們首先使用cJSON_Parse解析JSON數據,然后使用cJSON_GetObjectItem獲取JSON對象中的某個字段。

比如,我們通過cJSON_GetObjectItem函數可以獲取到一個JSON對象的字段,再使用該字段的類型指針即可訪問該字段的值。通過上述代碼樣例,我們便可以學會如何使用C語言獲取JSON格式數據中的字段值。