在C語言中,處理JSON對象需要使用第三方庫,比如cJSON。cJSON 是一種輕量級的JSON解析器,可以方便的在C程序中解析JSON文件和生成JSON格式數據。
在處理JSON序列化時,可以使用cJSON庫提供的函數,將C語言的結構體轉化為JSON格式的字符串。下面是一個示例代碼:
typedef struct{ char *name; int age; char *address; } person; cJSON *serialize_person(person *p) { cJSON *root = cJSON_CreateObject(); cJSON_AddStringToObject(root, "name", p->name); cJSON_AddNumberToObject(root, "age", p->age); cJSON_AddStringToObject(root, "address", p->address); return root; } int main(){ person p = {"John", 20, "Shanghai"}; cJSON *json = serialize_person(&p); char *json_str = cJSON_Print(json); printf("%s", json_str); cJSON_Delete(json); return 0; }
在上面的代碼中,我們首先定義了一個person結構體,包含name,age和address三個字段。然后定義了一個名為serialize_person的函數,將person結構體轉化為cJSON對象,再使用cJSON_Print函數將cJSON對象轉化為JSON字符串,并打印出來。最后使用cJSON_Delete函數釋放內存。
以上就是關于使用cJSON庫對C語言結構體進行JSON序列化的簡單介紹。
上一篇vue 遍歷多張圖片
下一篇c 采集網頁json