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

c 將類轉(zhuǎn)為json

傅智翔1年前9瀏覽0評論

C語言是一種廣泛使用的編程語言,它所提供的功能非常強(qiáng)大。其中一個功能是將類轉(zhuǎn)化為JSON格式。JSON是一種輕量級的數(shù)據(jù)交換格式,它可以被用來存儲和傳輸數(shù)據(jù)。在下面的例子中,我們將說明如何使用C語言將類轉(zhuǎn)為JSON。

#include#include#include#include#includetypedef struct {
char name[20];
int age;
bool is_married;
} Person;
int main() {
Person p1 = {"Tom", 30, true};
Person p2 = {"Sally", 25, false};
json_t *root = json_object();
json_t *person_array = json_array();
json_t *p1_obj = json_object();
json_t *p2_obj = json_object();
json_object_set_new(p1_obj, "name", json_string(p1.name));
json_object_set_new(p1_obj, "age", json_integer(p1.age));
json_object_set_new(p1_obj, "is_married", json_boolean(p1.is_married));
json_object_set_new(p2_obj, "name", json_string(p2.name));
json_object_set_new(p2_obj, "age", json_integer(p2.age));
json_object_set_new(p2_obj, "is_married", json_boolean(p2.is_married));
json_array_append(person_array, p1_obj);
json_array_append(person_array, p2_obj);
json_object_set_new(root, "people", person_array);
char *json_str = json_dumps(root, JSON_INDENT(4));
printf("%s\n", json_str);
free(json_str);
json_decref(root);
return 0;
}

在上面的代碼中,定義了一個名為Person的結(jié)構(gòu)體,其中包含了人物的姓名,年齡和婚姻狀況。然后,定義了兩個Person類型的對象,分別表示Tom和Sally。

接下來,我們使用jansson庫中提供的json_t類型,json_object()和json_array()函數(shù)來創(chuàng)建JSON對象和數(shù)組。將每個人物的信息作為一個單獨(dú)的JSON對象添加到一個名為person_array的JSON數(shù)組中。

最后,使用json_dumps()函數(shù)將JSON樹轉(zhuǎn)化為字符串并打印輸出。

總之,將C語言類轉(zhuǎn)換為JSON格式是一項(xiàng)非常有用的技術(shù)。這可以幫助我們在應(yīng)用程序中存儲和傳輸數(shù)據(jù)。