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

c 實體轉換成json對象

錢諍諍1年前8瀏覽0評論

在使用C語言開發Web程序的時候,往往需要將實體對象轉換成JSON對象,便于后續的數據傳輸和使用。以下是一個簡單的實例,介紹如何在C語言中實現將實體轉換成JSON對象的方法。

#include <stdio.h>
#include <string.h>
#include <jansson.h>
/**
 * 實體對象
 */
typedef struct {
char name[50];
int age;
} Person;
/**
 * 將Person對象轉換成JSON對象
 */
json_t* person_to_json(Person p) {
json_t *obj = json_object();
json_object_set_new(obj, "name", json_string(p.name));
json_object_set_new(obj, "age", json_integer(p.age));
return obj;
}
int main(int argc, char const *argv[])
{
// 創建Person對象
Person p = {"Tom", 18};
// 將Person對象轉換成JSON對象
json_t *person_json = person_to_json(p);
// 將JSON對象轉換成字符串
const char *json_str = json_dumps(person_json, JSON_ENCODE_ANY);
// 打印JSON字符串
printf("%s\n", json_str);
// 釋放JSON對象
json_decref(person_json);
return 0;
}

在上面的代碼中,首先定義了一個Person結構體,表示一個人的姓名和年齡。在此基礎上,定義了一個person_to_json函數,該函數接受一個Person對象作為參數,將其轉換成JSON對象。在該函數中,先創建一個空的JSON對象(使用json_object函數),然后依次將Person對象的name和age字段作為JSON對象的屬性添加進去(使用json_object_set_new函數)。最后返回這個JSON對象。

在主函數中,先創建了一個Person對象,然后調用person_to_json函數將其轉換成JSON對象。接著,使用json_dumps函數將JSON對象轉換成字符串。最后,打印JSON字符串,并釋放JSON對象的內存(使用json_decref函數)。