JSON是一種與語言無關的輕量級數(shù)據(jù)交換協(xié)議,廣泛用于前后端交互中。而二維數(shù)組則是在編程中常遇到的數(shù)據(jù)結構,能夠有效地組織和存儲數(shù)據(jù)。那么如何在JSON中表示二維數(shù)組呢?這就需要使用C語言下的JSON庫來實現(xiàn)。
#include <stdio.h> #include <stdlib.h> #include <jansson.h> int main() { // 定義二維數(shù)組 int arr[2][3] = {{1, 2, 3}, {4, 5, 6}}; // 創(chuàng)建JSON對象 json_t *root = json_array(); // 遍歷數(shù)組,將元素添加到JSON對象中 for (int i = 0; i< 2; i++) { json_t *sub = json_array(); for (int j = 0; j< 3; j++) { json_t *val = json_integer(arr[i][j]); json_array_append_new(sub, val); } json_array_append_new(root, sub); } // 編碼JSON對象 char *json_str = json_dumps(root, JSON_INDENT(4)); // 輸出JSON字符串 printf("%s\n", json_str); // 釋放資源 free(json_str); json_decref(root); return 0; }
上述代碼中,我們首先定義了一個2行3列的二維數(shù)組。然后,創(chuàng)建了一個JSON數(shù)組對象來存儲所有二維數(shù)組的數(shù)據(jù)。之后,我們遍歷二維數(shù)組,并將每個元素逐個添加到JSON對象的子數(shù)組中。最終,我們使用json_dumps()函數(shù)編碼JSON對象,并以字符串形式輸出。
通過以上代碼,我們就能夠實現(xiàn)將C語言下的二維數(shù)組轉換為JSON格式,并在程序中進行相應的數(shù)據(jù)交互了。