C語言是一門強大的編程語言,不僅可以實現各種算法和數據結構,還可以使用各種庫來進行開發。其中,獲取JSON集合是很常見的需求。在C語言中,我們可以使用第三方庫來實現獲取JSON集合的功能。
#include <stdio.h>
#include <jansson.h>
int main(){
char *json_string = "{\"name\": \"張三\", \"age\": 18}";
json_error_t json_error;
json_t *json = json_loads(json_string, 0, &json_error);
if(!json){
printf("解析JSON字符串失敗,錯誤信息:%s", json_error.text);
return 1;
}
json_t *name = json_object_get(json, "name");
const char *name_str = json_string_value(name);
printf("name: %s\n", name_str);
json_t *age = json_object_get(json, "age");
int age_int = json_integer_value(age);
printf("age: %d\n", age_int);
json_decref(json);
return 0;
}
上面的代碼演示了如何獲取JSON集合中的值。首先,我們需要使用json_loads函數來將JSON字符串轉換為json_t類型的對象。如果轉換失敗,則會返回一個NULL指針和一個json_error_t類型的結構體,結構體中包含了錯誤信息。如果轉換成功,則可以使用json_object_get函數來獲取指定名稱的JSON對象,并使用json_string_value或json_integer_value函數來獲取該對象的值。
值得注意的是,在使用完json_t對象后,我們需要使用json_decref函數來釋放內存。
上一篇c 獲取網頁json
下一篇c 獲取json標簽