JSON是一種數據格式,其優點在于具有結構化、輕量、易解析、易傳輸等良好的特性。而C語言是一種高效、底層的編程語言,很多場景下都需要輸出JSON來進行信息交互。
在C語言中,輸出JSON直接使用字符串操作通常較為復雜,推薦使用C語言的第三方庫來進行JSON的輸出。
#include <stdio.h> #include <jansson.h> int main() { json_t *root = json_object(); // 創建JSON根節點 // 添加JSON子節點 json_object_set_new(root, "name", json_string("John")); json_object_set_new(root, "age", json_integer(30)); json_t *addresses = json_array(); json_array_append_new(addresses, json_string("Address 1")); json_array_append_new(addresses, json_string("Address 2")); json_object_set_new(root, "addresses", addresses); // 輸出JSON char *json_str = json_dumps(root, JSON_INDENT(4)); printf("%s", json_str); // 釋放資源 json_decref(root); free(json_str); return 0; }
上述代碼使用jansson庫輸出JSON,首先創建根節點,然后添加子節點,最后調用json_dumps將根節點輸出為字符串。
需要注意的是,在輸出JSON之后需要釋放根節點和輸出的字符串,防止內存泄漏。