在C語言中,要實現JSON傳遞數組對象數組對象數組,可以使用第三方庫CJSON來實現。
#include <stdio.h> #include <stdlib.h> #include <cJSON.h> int main() { // 創建數組對象數組 cJSON *a1 = cJSON_CreateObject(); cJSON_AddItemToObject(a1, "name", cJSON_CreateString("小明")); cJSON_AddItemToObject(a1, "age", cJSON_CreateNumber(20)); cJSON *a2 = cJSON_CreateObject(); cJSON_AddItemToObject(a2, "name", cJSON_CreateString("小紅")); cJSON_AddItemToObject(a2, "age", cJSON_CreateNumber(18)); cJSON *array1 = cJSON_CreateArray(); cJSON_AddItemToArray(array1, a1); cJSON_AddItemToArray(array1, a2); // 創建數組對象 cJSON *a3 = cJSON_CreateObject(); cJSON_AddItemToObject(a3, "name", cJSON_CreateString("小剛")); cJSON_AddItemToObject(a3, "age", cJSON_CreateNumber(22)); cJSON *array2 = cJSON_CreateArray(); cJSON_AddItemToArray(array2, a3); // 創建最終的數組對象數組 cJSON *array3 = cJSON_CreateArray(); cJSON_AddItemToArray(array3, array1); cJSON_AddItemToArray(array3, array2); // 輸出JSON字符串 char *json_str = cJSON_Print(array3); printf("%s", json_str); // 釋放內存 cJSON_Delete(array3); free(json_str); return 0; }
在以上代碼中,我們首先使用
最終,我們再次以數組對象的形式將
最后,我們使用