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

c 字典轉(zhuǎn)json

林國瑞2年前7瀏覽0評論

C字典是一種常見的數(shù)據(jù)結(jié)構(gòu),它將數(shù)據(jù)存儲在鍵-值對中。而JSON是一種輕量級的數(shù)據(jù)交換格式,常用于web應(yīng)用中傳遞數(shù)據(jù)。因此,在C語言中將字典轉(zhuǎn)換為JSON格式非常有用。

要將C字典轉(zhuǎn)換為JSON格式,我們需要使用第三方庫。在這里我們使用Jansson庫,它是一個(gè)高性能的JSON庫,支持C和C++。

#include <jansson.h>
int main() {
// 創(chuàng)建一個(gè)C字典
cJSON *person = cJSON_CreateObject();
cJSON_AddStringToObject(person, "name", "John");
cJSON_AddNumberToObject(person, "age", 30);
cJSON_AddStringToObject(person, "city", "New York");
// 將C字典轉(zhuǎn)換為JSON字符串
char *json_str = cJSON_PrintUnformatted(person);
printf("JSON string: %s\n", json_str);
// 釋放內(nèi)存
cJSON_Delete(person);
free(json_str);
return 0;
}

上面的代碼首先使用cJSON_CreateObject()函數(shù)創(chuàng)建一個(gè)空的C字典。接著,使用cJSON_AddStringToObject()和cJSON_AddNumberToObject()函數(shù)向字典中添加鍵值對。最后,使用cJSON_PrintUnformatted()函數(shù)將字典轉(zhuǎn)換為JSON字符串。

注意函數(shù)cJSON_PrintUnformatted()將字典轉(zhuǎn)換為JSON字符串,并在堆上分配內(nèi)存。因此,我們需要釋放字典和JSON字符串的內(nèi)存。

使用Jansson庫將C字典轉(zhuǎn)換為JSON格式非常簡單。除了上面介紹的函數(shù)之外,Jansson還提供了許多其他函數(shù)和選項(xiàng),以滿足各種需求。