在C語言中,JSON編寫還是比較常見的。JSON是一種輕量級的數據交換格式,它比XML更加簡潔。很多時候,我們需要將數據以JSON格式進行傳輸,這時候就需要用到C語言解析和生成JSON。
#include "cJSON.h" #includeint main (void) { cJSON * list = NULL; cJSON * submenu = NULL; cJSON * item = NULL; list = cJSON_CreateObject (); cJSON_AddStringToObject (list, "name", "menu"); submenu = cJSON_CreateIntArray ((int []) {1, 2, 3}, 3); item = cJSON_CreateObject (); cJSON_AddStringToObject (item, "name", "item1"); cJSON_AddItemReferenceToObject (item, "submenu", submenu); cJSON_AddItemToArray (cJSON_GetObjectItemCaseSensitive (list, "items"), item); printf ("%s\n", cJSON_Print (list)); cJSON_Delete (list); return 0; }
這是一個生成JSON格式的例子。在代碼中,我們首先創建了一個空的JSON對象list,然后向其中添加了一個字符串name。接著,我們創建一個submenu數組和一個item對象,并將submenu數組添加到item對象中。最后,將item對象添加到JSON數組list中。最后,我們通過函數cJSON_Print將JSON對象轉換為JSON字符串打印出來。
當然,這是一個比較簡單的例子。實際上,C語言可以實現更加復雜的JSON操作。無論是解析還是生成JSON,在C語言中都有很多開源的庫可以使用,比如在示例中我們使用了著名的cJSON庫。要使用這些庫,我們只需要將其包含在自己的代碼中即可。