JSON是一種輕量級的數據交換格式,易于閱讀和編寫。當我們需要在C代碼中處理JSON數據時,可以使用C語言提供的API來完成。以下是如何使用C API處理JSON數據的一些示例:
// 解析JSON數據 #include <stdio.h> #include <stdlib.h> #include <jansson.h> int main() { char *json_string = "{\"name\": \"Tom\", \"age\": 18}"; json_error_t error; json_t *json = json_loads(json_string, 0, &error); if (!json) { printf("json error: %s\n", error.text); return 1; } const char *name = json_string_value(json_object_get(json, "name")); int age = json_integer_value(json_object_get(json, "age")); printf("name: %s, age: %d\n", name, age); json_decref(json); return 0; }
以上代碼將字符串類型的JSON數據解析為json_t類型,然后從中獲取"name"和"age"的值。必須注意,在使用完json_t類型后,必須調用json_decref釋放內存。
// 創建JSON數據 #include <jansson.h> #include <stdlib.h> int main() { json_t *json = json_object(); json_object_set_new(json, "name", json_string("Tom")); json_object_set_new(json, "age", json_integer(18)); char *json_string = json_dumps(json, JSON_COMPACT); printf("%s\n", json_string); free(json_string); json_decref(json); return 0; }
以上代碼創建了一個json_t對象,然后設置了"name"和"age"的值。最后,將其轉換為字符串類型的JSON數據,并打印出來。必須注意,在使用完字符串類型的JSON數據后,必須調用free釋放內存。
總之,使用C API處理JSON數據庫非常方便。我們只需要使用json_t類型和相應的API來解析和創建JSON數據即可。
上一篇go讀寫json
下一篇vue apidoc