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

c 動態轉json數據結構

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

動態轉JSON是一種將C程序中的數據結構轉換成JSON格式的方法。在C程序中,可以使用結構體和變量來表示數據。JSON作為一種輕量級的數據交換格式,廣泛用于Web應用程序和現代應用程序的數據傳輸。

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <jansson.h>
typedef struct {
char name[20];
int age;
char address[50];
} Person;
int main(){
Person p = {"Alex", 25, "Baker Street 221B, London"};
json_t *root = json_object();
json_object_set_new(root, "name", json_string(p.name));
json_object_set_new(root, "age", json_integer(p.age));
json_object_set_new(root, "address", json_string(p.address));
char *json_str = json_dumps(root, JSON_INDENT(4));
printf("%s\n", json_str);
free(json_str);
json_decref(root);
return 0;
}

以上代碼示例中,定義了一個Person結構體,用于存儲人名、年齡和地址信息。在主函數中,通過調用json_t類型的json_object_set_new()函數將數據轉換成JSON格式。json_t類型是一個指向JSON值的指針類型,表示JSON數據結構中的一個節點。

在本例中,json_object_set_new()函數的第一個參數是JSON對象,該函數將JSON對象與JSON鍵和值進行關聯。json_string()和json_integer()函數用于將結構體中的相應值轉換成JSON字符串和JSON整數。最后,使用json_dumps()函數將JSON對象序列化成JSON字符串,將其打印到控制臺上。

在實際應用中,可以使用cJSON、Jansson等開源庫來實現C程序與JSON數據的交互,從而輕松實現數據的序列化和反序列化。