C語言是一門強大的編程語言,但通常情況下不適用于解析JSON數據。不過,有些庫可以讓您輕松地在C中實現JSON解析和創建。下面,我們將介紹一個使用C從JSON數據中獲取數據的例子。
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <jansson.h> int main() { char *json_string = "{ \"name\":\"張三\", \"age\":28, \"city\":\"上海\" }"; json_error_t error; json_t *json = json_loads(json_string, 0, &error); if(!json) { printf("解析JSON發生了錯誤:%s\n", error.text); return 1; } json_t *name = json_object_get(json, "name"); json_t *age = json_object_get(json, "age"); json_t *city = json_object_get(json, "city"); const char *name_value = json_string_value(name); int age_value = json_integer_value(age); const char *city_value = json_string_value(city); printf("姓名:%s\n", name_value); printf("年齡:%d\n", age_value); printf("城市:%s\n", city_value); json_decref(json); return 0; }
本示例使用了json.h庫解析JSON數據,首先導入json.h頭文件,然后使用json_loads函數將JSON字符串轉換為json_t對象。
要獲得JSON對象中的屬性,可以使用json_object_get函數。在本例中,我們使用了三個json_object_get函數獲取“name”,“age”,“city”屬性。然后,使用json_string_value和json_integer_value函數將JSON值轉換為原始的C數據類型。
最后,打印這些數據,并在程序結束時使用json_decref函數釋放json_t對象的內存。
上一篇python 熱力圖地圖
下一篇code怎么設置vue