在C語言中,我們經常需要接收JSON數據。JSON是一種輕量級的數據格式,常用于數據交互。下面我們來介紹一下在C語言中如何接收JSON數據。
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <jansson.h> int main(void) { char* json_text = "{\"name\":\"Tom\",\"age\":18}"; json_error_t error; json_t *root = json_loads(json_text, 0, &error); if (!root) { printf("json_loads error: %s\n", error.text); return -1; } json_t *name = json_object_get(root, "name"); if (!json_is_string(name)) { printf("name is not string\n"); return -1; } const char *name_str = json_string_value(name); printf("name: %s\n", name_str); json_t *age = json_object_get(root, "age"); if (!json_is_integer(age)) { printf("age is not integer\n"); return -1; } int age_int = json_integer_value(age); printf("age: %d\n", age_int); return 0; }
以上代碼演示了如何解析JSON數據。首先我們需要準備一個JSON文本,然后用json_loads函數把JSON解析成json_t類型的結構體。然后就可以通過json_object_get函數獲取JSON對象的屬性值。
如果你還沒有安裝jansson庫,可以通過以下命令進行安裝:
sudo apt-get install libjansson-dev
總的來說,接收JSON數據在C語言中并不困難,只需要使用jansson庫就可以輕松解決。