如果你想在C語言中創建一個數組類型的JSON數據庫,下面的代碼可以幫助你完成這個任務。
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <jansson.h> #define MAX_SIZE 100 int main(void) { json_t *root; json_error_t error; int arr[MAX_SIZE]; // 初始化數組中的元素 for(int i=0; i<MAX_SIZE; i++){ arr[i] = i; } // 將數組轉換為JSON格式 root = json_pack("[100i]", arr, MAX_SIZE); // 將JSON格式打印出來 char *dump_string = json_dumps(root, 0); printf("%s\n", dump_string); // 釋放內存 json_decref(root); free(dump_string); return 0; }
上述代碼使用了jansson庫來處理JSON格式。在主函數中,我們創建了一個長度為100的整型數組,然后將其轉換為JSON格式,并打印輸出。
使用json_pack函數可以將一個數組打包成一個JSON數組類型的對象。這個函數的第一個參數是一個格式字符串,用于指定數組元素的類型和數量。上述代碼中,我們使用了字符串"100i"來表示有100個整型元素。第二個參數是指向數組的指針,第三個參數是數組的長度。最終得到的root變量就是一個JSON數組對象。
使用json_dumps函數可以將JSON對象轉換為字符串格式的JSON文本,方便輸出和存儲。第一個參數是要轉換的JSON對象,第二個參數指定輸出縮進的位數。
在代碼最后,我們使用json_decref函數釋放JSON對象的內存。