在C語(yǔ)言中,有時(shí)候需要將對(duì)象轉(zhuǎn)換為JSON格式的數(shù)據(jù)。JSON是一種輕量級(jí)的數(shù)據(jù)交換格式,常用于前后端數(shù)據(jù)傳輸。
使用C語(yǔ)言進(jìn)行JSON數(shù)據(jù)處理有很多方法,但最常用的是使用第三方庫(kù)。以下介紹如何使用cJSON庫(kù)將C對(duì)象轉(zhuǎn)換為JSON格式:
#include <stdio.h> #include <cJSON.h> struct person { char *name; int age; }; int main() { struct person p = {"John", 30}; cJSON *json = cJSON_CreateObject(); cJSON_AddStringToObject(json, "name", p.name); cJSON_AddNumberToObject(json, "age", p.age); char *json_str = cJSON_Print(json); printf("%s", json_str); free(json_str); cJSON_Delete(json); return 0; }
首先,需要引用cJSON頭文件,并定義一個(gè)結(jié)構(gòu)體類型。在main函數(shù)中,定義了一個(gè)person對(duì)象,將其轉(zhuǎn)換為JSON數(shù)據(jù)。
用cJSON_CreateObject()函數(shù)創(chuàng)建一個(gè)cJSON對(duì)象,該對(duì)象默認(rèn)為空。通過cJSON_AddStringToObject()和cJSON_AddNumberToObject()函數(shù)將數(shù)據(jù)添加到JSON對(duì)象中。最后,調(diào)用cJSON_Print()函數(shù)將JSON對(duì)象轉(zhuǎn)換為字符串,并用printf()函數(shù)輸出。
注意,使用cJSON庫(kù)時(shí)需要在編譯時(shí)添加-lcjson選項(xiàng)。
上一篇python 的用圖
下一篇idea咋樣裝vue