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

c 中讀取json

錢浩然2年前8瀏覽0評論

在C語言中讀取JSON格式的數據,需要借助第三方庫進行解析。目前常用的有cJSON、Jansson等庫。

下面以cJSON為例,介紹如何在C語言中讀取JSON格式的數據。

// 示例JSON格式數據
{
"name": "小明",
"age": 18,
"sex": "male",
"hobby": ["basketball", "football"],
"address": {
"province": "廣東",
"city": "廣州"
}
}
// 引入cJSON頭文件
#include "cJSON.h"
// 讀取JSON格式數據
char* json_data = "{...}";   // 假設已有JSON格式數據,存儲在json_data字符串中
cJSON* root = cJSON_Parse(json_data);  // 解析JSON字符串
// 獲取數據
cJSON* name = cJSON_GetObjectItem(root, "name");  // 獲取name字段
cJSON* age = cJSON_GetObjectItem(root, "age");    // 獲取age字段
cJSON* hobby = cJSON_GetObjectItem(root, "hobby");  // 獲取hobby字段(數組類型)
cJSON* address = cJSON_GetObjectItem(root, "address");  // 獲取address字段(對象類型)
// 讀取數據
char* name_str = cJSON_GetStringValue(name);  // 獲取name字段的字符串值
int age_num = cJSON_GetNumberValue(age);  // 獲取age字段的數值
int hobby_array_size = cJSON_GetArraySize(hobby);  // 獲取hobby字段的數組元素個數
cJSON* hobby_item = cJSON_GetArrayItem(hobby, 0);  // 獲取hobby字段的第一個元素
char* address_obj_str = cJSON_Print(address);  // 將address字段的對象類型轉化為字符串表示
// 釋放內存
cJSON_Delete(root);  // 刪除root對象,同時也會刪除其子對象

通過以上代碼可以看出,cJSON在使用過程中需要進行解析、獲取和讀取等多個步驟,而不是僅僅進行讀取操作。