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

c 解析json字符串為對象

林子帆2年前9瀏覽0評論

JSON是一種輕量級的數據交換格式,廣泛應用于前后端之間的數據傳輸。在C語言中解析JSON字符串為對象需要借助第三方庫,本文介紹一下使用 cJSON 庫進行 JSON 解析的基本步驟。

#include <stdio.h>
#include <cJSON.h>
int main()
{
char* json_str = "{\"name\":\"Tom\",\"age\":18,\"gender\":\"male\"}";
cJSON* root = cJSON_Parse(json_str); // 將JSON字符串解析為cJSON對象
// 獲取字符串類型的值
cJSON* name_item = cJSON_GetObjectItem(root, "name");
const char* name = cJSON_GetStringValue(name_item);
printf("Name: %s\n", name);
// 獲取數字類型的值
cJSON* age_item = cJSON_GetObjectItem(root, "age");
int age = cJSON_GetNumberValue(age_item);
printf("Age: %d\n", age);
// 獲取布爾類型的值
cJSON* gender_item = cJSON_GetObjectItem(root, "gender");
int is_male = cJSON_IsTrue(gender_item);
printf("Is male: %d\n", is_male);
cJSON_Delete(root); // 釋放cJSON對象的內存
return 0;
}

首先需要包含 cJSON.h 頭文件,然后使用 cJSON_Parse 函數將 JSON 字符串解析為 cJSON 對象,該函數返回一個指向 cJSON 對象的指針。通過 cJSON_GetObjectItem 函數獲取對象中指定名稱的值,然后根據值的類型使用相應的函數獲取其實際值。之后使用 cJSON_Delete 函數釋放 cJSON 對象的內存。

以上就是使用 cJSON 庫解析 JSON 字符串為對象的基本步驟,通過了解 cJSON 庫的接口函數,可以實現更為復雜的 JSON 解析,滿足各種數據解析需求。