現(xiàn)在的Web應(yīng)用程序幾乎都需要與JSON格式數(shù)據(jù)打交道。在C語言中,我們可以使用第三方庫來處理JSON數(shù)據(jù)。
#include <stdio.h>#include <jansson.h>int main() { char *json_str = "{\"name\": \"John\", \"age\": 30, \"city\": \"New York\"}"; json_t *root; json_error_t error; root = json_loads(json_str, 0, &error); if (!root) { fprintf(stderr, "error: on line %d: %s\n", error.line, error.text); return 1; } const char *name = json_string_value(json_object_get(root, "name")); int age = json_integer_value(json_object_get(root, "age")); const char *city = json_string_value(json_object_get(root, "city")); printf("Name: %s\nAge: %d\nCity: %s\n", name, age, city); json_decref(root); return 0; }
上面代碼中,我們使用了jansson庫來解析JSON串。我們首先定義JSON串,然后使用json_loads()函數(shù)來加載JSON數(shù)據(jù)。
如果加載JSON數(shù)據(jù)成功,我們就可以使用json_object_get()函數(shù)來獲取JSON對象。對于字符串類型的值,我們可以使用json_string_value()函數(shù)來獲取值,對于數(shù)字類型的值,我們可以使用json_integer_value()函數(shù)來獲取值。
最后,我們使用json_decref()函數(shù)釋放內(nèi)存。
總之,使用C語言處理JSON數(shù)據(jù)不難,只需要安裝第三方庫就可以輕松完成。