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

c 結(jié)構(gòu)體磚json

錢淋西1年前9瀏覽0評論

C語言中的結(jié)構(gòu)體是一種非常有用的數(shù)據(jù)類型,它可以存儲不同類型的數(shù)據(jù)。JSON(JavaScript Object Notation)是一種輕量級的數(shù)據(jù)交換格式,它已被廣泛應(yīng)用于 Web 應(yīng)用程序中。在本文中,我們將介紹如何將C語言中的結(jié)構(gòu)體轉(zhuǎn)換為JSON格式。

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <jansson.h>
typedef struct {
char name[50];
int age;
float weight;
} Person;
int main() {
Person p;
strcpy(p.name, "Tom");
p.age = 25;
p.weight = 68.5;
json_t *jsonPerson = json_object();
json_object_set_new(jsonPerson, "name", json_string(p.name));
json_object_set_new(jsonPerson, "age", json_integer(p.age));
json_object_set_new(jsonPerson, "weight", json_real(p.weight));
char *jsonString = json_dumps(jsonPerson, JSON_INDENT(4));
printf("%s\n", jsonString);
free(jsonString);
json_decref(jsonPerson);
return 0;
}

在上面的代碼中,我們首先定義了一個Person結(jié)構(gòu)體。然后,我們使用strcpy函數(shù)將一個字符串復(fù)制到該結(jié)構(gòu)體的name成員中,將一個整數(shù)值賦給age成員,將一個浮點數(shù)值賦給weight成員。

接下來,我們使用json_object函數(shù)創(chuàng)建一個json_t類型的對象,并使用json_object_set_new函數(shù)設(shè)置該對象的成員。其中,第一個參數(shù)是json_t類型的對象,第二個參數(shù)是成員的名稱,第三個參數(shù)是成員的值。

最后,我們使用json_dumps函數(shù)將json_t類型的對象轉(zhuǎn)換為JSON格式的字符串,并使用printf函數(shù)將該字符串輸出到控制臺。

使用C語言將結(jié)構(gòu)體轉(zhuǎn)換為JSON格式是非常有用的,這使得我們可以輕松地在各種應(yīng)用程序之間傳輸和共享數(shù)據(jù)。