C語言中的JSON括號指的是“{}”和“[]”兩個符號,分別用于表示JSON對象和JSON數(shù)組。在C語言中,我們可以通過使用第三方庫例如cJSON來對JSON數(shù)據(jù)進行解析和生成。下面是一個使用cJSON庫生成JSON對象和數(shù)組的例子:
#include <stdio.h> #include <stdlib.h> #include <cjson/cJSON.h> int main() { cJSON* root = cJSON_CreateObject(); cJSON_AddStringToObject(root, "name", "cJSON"); cJSON_AddNumberToObject(root, "version", 1.7); cJSON* array = cJSON_CreateArray(); cJSON_AddItemToArray(array, cJSON_CreateNumber(1)); cJSON_AddItemToArray(array, cJSON_CreateNumber(2)); cJSON_AddItemToArray(array, cJSON_CreateNumber(3)); cJSON_AddItemToObject(root, "array", array); char* json_str = cJSON_Print(root); printf("%s", json_str); cJSON_Delete(root); free(json_str); return 0; }
在這個例子中,我們首先使用cJSON庫的cJSON_CreateObject函數(shù)創(chuàng)建一個JSON對象root,并使用cJSON_AddStringToObject和cJSON_AddNumberToObject函數(shù)向?qū)ο笾刑砑觾蓚€鍵值對。接著,我們創(chuàng)建了一個JSON數(shù)組array,并使用cJSON_AddItemToArray函數(shù)向數(shù)組中添加了三個數(shù)值。最后,我們使用cJSON_AddItemToObject將數(shù)組作為對象的一個屬性添加到了root對象中。
最后,我們調(diào)用了cJSON_Print函數(shù)將root對象轉(zhuǎn)換成字符串形式,并輸出到屏幕上。同時,我們也需要使用cJSON_Delete函數(shù)和free函數(shù)來釋放內(nèi)存。