C語言是一種強大的編程語言,常用于開發(fā)高效、穩(wěn)定、安全的應用程序。在應用程序的開發(fā)過程中,json格式化是常見的需求,下面介紹如何使用C語言調(diào)用json格式化。
// 引入頭文件 #include <stdio.h> #include <string.h> #include <jansson.h> int main() { // 定義json數(shù)據(jù) char *str = "{ \"name\":\"Alice\", \"age\":20, \"gender\":\"female\" }"; json_t *root; json_error_t error; // 解析json數(shù)據(jù) root = json_loads(str, 0, &error); // 判斷解析是否成功 if (root) { // 格式化json數(shù)據(jù) char *formatted = json_dumps(root, JSON_INDENT(2) | JSON_PRESERVE_ORDER); // 輸出格式化后的json數(shù)據(jù) printf("%s", formatted); // 釋放內(nèi)存 free(formatted); } else { // 輸出錯誤信息 printf("json error on line %d : %s\n", error.line, error.text); } // 釋放內(nèi)存 json_decref(root); return 0; }
上述代碼中,定義了一個json數(shù)據(jù),通過調(diào)用json_loads函數(shù)解析json數(shù)據(jù)并判斷是否解析成功。如果解析成功,通過調(diào)用json_dumps函數(shù)格式化json數(shù)據(jù)并輸出。需要注意的是,formatted變量需要手動釋放內(nèi)存。
總之,使用C語言調(diào)用json格式化是一種常見的需求,通過了解json的相關API和使用方法,可以輕松解決json格式化的問題。