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

c 轉json讀取

謝彥文2年前8瀏覽0評論

C語言是一門廣泛應用于計算機科學和信息技術領域的編程語言,而JSON是一種輕量級的數據交換格式。在C語言中,我們可以通過轉換將C數據結構轉換為JSON對象,或者讀取JSON對象并將其轉換為C數據結構。

// 將C結構體轉換為JSON格式
#include#include#include#includetypedef struct person {
char name[50];
int age;
} Person;
int main() {
// 初始化一個Person結構體
Person p = { "John Doe", 30 };
// 將Person結構體轉換為JSON
cJSON* json = cJSON_CreateObject();
cJSON_AddStringToObject(json, "name", p.name);
cJSON_AddNumberToObject(json, "age", p.age);
printf("%s", cJSON_PrintUnformatted(json));
cJSON_Delete(json);
return 0;
}

上述C代碼使用了cJSON庫來創建一個包含兩個屬性(name和age)的JSON對象。首先,我們需要通過cJSON_CreateObject函數創建一個空JSON對象,然后使用cJSON_AddStringToObject和cJSON_AddNumberToObject函數添加name和age屬性。最后,我們使用cJSON_PrintUnformatted函數將生成的JSON對象格式化為字符串并輸出。

// 從JSON格式讀取C結構體
#include#include#include#includetypedef struct person {
char name[50];
int age;
} Person;
int main() {
// 從JSON格式字符串中讀取Person結構體
const char* json_str = "{\"name\":\"John Doe\",\"age\":30}";
cJSON* json = cJSON_Parse(json_str);
// 從JSON對象中讀取屬性值
Person p;
strcpy(p.name, cJSON_GetObjectItem(json, "name")->valuestring);
p.age = cJSON_GetObjectItem(json, "age")->valueint;
// 輸出Person結構體
printf("Name: %s, Age: %d", p.name, p.age);
cJSON_Delete(json);
return 0;
}

上述C代碼使用了cJSON庫從JSON格式字符串中讀取一個Person結構體。首先,我們使用cJSON_Parse函數將JSON格式字符串轉換為JSON對象。然后,我們使用cJSON_GetObjectItem函數從JSON對象中讀取name和age屬性的值,并將它們存儲到Person結構體中。最后,我們輸出Person結構體的name和age屬性值。