C語(yǔ)言中有許多操作JSON格式數(shù)據(jù)的庫(kù),其中cJSON就是一個(gè)非常好用的庫(kù)。如何輸出JSON格式數(shù)據(jù)呢?我們可以使用cJSON庫(kù)提供的函數(shù)進(jìn)行輸出。以下是一個(gè)簡(jiǎn)單的例子。
#include <stdio.h> #include <cJSON.h> int main() { cJSON *root = NULL; cJSON *person = NULL; // 創(chuàng)建一個(gè)JSON對(duì)象 root = cJSON_CreateObject(); // 添加一個(gè)子對(duì)象 person = cJSON_AddObjectToObject(root, "person"); // 在person對(duì)象中添加一個(gè)字符串 cJSON_AddStringToObject(person, "name", "Tom"); // 在person對(duì)象中添加一個(gè)數(shù)字 cJSON_AddNumberToObject(person, "age", 18); // 輸出JSON格式數(shù)據(jù) char *out = cJSON_Print(root); printf("%s\n", out); free(out); cJSON_Delete(root); return 0; }
在上面的例子中,我們首先使用cJSON庫(kù)創(chuàng)建了一個(gè)JSON對(duì)象,然后在這個(gè)對(duì)象中添加了一個(gè)子對(duì)象person。接著在person對(duì)象中又添加了一個(gè)字符串和一個(gè)數(shù)字。最后通過(guò)cJSON_Print函數(shù)輸出了整個(gè)JSON格式數(shù)據(jù),并釋放了內(nèi)存。注意,在使用cJSON_Print函數(shù)輸出JSON格式數(shù)據(jù)時(shí),需要注意釋放內(nèi)存,否則會(huì)造成內(nèi)存泄漏。