在 C 語言中,我們經(jīng)常要使用數(shù)組來存儲數(shù)據(jù)。通常情況下,我們需要將數(shù)組中的數(shù)據(jù)轉(zhuǎn)換成 JSON 格式來方便處理和傳輸數(shù)據(jù)。本文將介紹如何將 C 數(shù)組封裝成 JSON 數(shù)據(jù)類型。
#include <stdio.h> #include <jansson.h> int main() { int arr[] = {1, 2, 3, 4, 5}; int len = sizeof(arr) / sizeof(int); json_t *json_array = json_array(); for (int i = 0; i< len; i++) { json_t *json_int = json_integer(arr[i]); json_array_append_new(json_array, json_int); } char *json_str = json_dumps(json_array, JSON_INDENT(4)); printf("%s\n", json_str); json_decref(json_array); jsonp_free(json_str); return 0; }
上述代碼使用了 jansson 庫來實現(xiàn)數(shù)組轉(zhuǎn) JSON。其中,函數(shù) json_array() 創(chuàng)建一個新的 json 數(shù)組;函數(shù) json_integer() 將 int 類型的數(shù)據(jù)轉(zhuǎn)換成 json 數(shù)據(jù)類型;函數(shù) json_array_append_new() 向 json 數(shù)組中添加新元素;函數(shù) json_dumps() 將 json 數(shù)據(jù)格式化成字符串并輸出。
運行以上代碼,將輸出以下 JSON 字符串:
[ 1, 2, 3, 4, 5 ]
這便是將 C 數(shù)組封裝成 JSON 數(shù)據(jù)類型的基本方法,可以方便地處理和傳輸數(shù)據(jù)。