JSON是一種輕量級的數據交換格式,它以鍵值對的形式組織數據,易于閱讀和編寫。在C語言中,我們可以使用json-c庫來序列化和反序列化JSON數據。
對于JSON數組格式,我們可以使用json-c庫提供的json_object_array_put_idx函數將C數組中的元素添加到JSON數組中,示例如下:
#include <stdio.h> #include <json-c/json.h> int main() { int arr[] = {1, 2, 3, 4, 5}; struct json_object *jarr = json_object_new_array(); for (int i = 0; i< sizeof(arr) / sizeof(arr[0]); i++) { struct json_object *jval = json_object_new_int(arr[i]); json_object_array_put_idx(jarr, i, jval); } printf("%s\n", json_object_to_json_string(jarr)); json_object_put(jarr); return 0; }
在上述示例中,首先定義了一個整型數組arr,然后創建了一個JSON數組對象jarr。
接著,我們使用for循環遍歷整型數組arr,并將每個元素轉化為JSON對象jval,最后使用json_object_array_put_idx函數將JSON對象添加到JSON數組中,并指定元素的索引。
最后,我們使用json_object_to_json_string函數將JSON數組對象轉換為JSON字符串并輸出,然后釋放JSON數組對象。