欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

c 如何將json轉成對象數組

江奕云1年前8瀏覽0評論

在進行 Web 后端開發時,C 語言常常用于編寫服務器程序。而 JSON 是一種常見的數據格式,因此在服務器端需要將 JSON 數據轉換為對象數組進行處理。接下來我們將學習如何使用 C 語言將 JSON 數據轉換為對象數組。

#include <stdio.h>
#include <stdlib.h>
#include <jansson.h>
int main()
{
const char *json_string = "[{\"name\":\"Tom\",\"age\":18},{\"name\":\"Jerry\",\"age\":20}]";
json_error_t error;
json_t *root = json_loads(json_string, 0, &error);
if(!root)
{
printf("%s", error.text);
return -1;
}
size_t size = json_array_size(root);
for(size_t index = 0; index< size; index++)
{
json_t *object = json_array_get(root, index);
const char *name = json_string_value(json_object_get(object, "name"));
int age = json_integer_value(json_object_get(object, "age"));
printf("%s\t%d\n", name, age);
}
json_decref(root);
return 0;
}

上面的代碼使用了第三方庫jansson來解析 JSON 數據。在代碼中,我們先定義了一個 JSON 字符串,然后使用json_loads函數將其轉換為 JSON 對象,并檢查是否出錯。

接著,我們使用json_array_size函數獲取數組的大小,并使用json_array_get函數獲取數組中指定位置的對象。我們可以使用json_object_get函數獲取對象中指定字段的值,并使用json_string_valuejson_integer_value函數將值轉換為字符串和整數。

最后,我們使用json_decref函數釋放內存。

到這里,我們就學會了如何使用 C 語言將 JSON 數據轉換為對象數組。即使沒有第三方庫的幫助,我們也可以手動解析 JSON 數據,只不過會比較繁瑣。在實際開發中,我們可以根據需要選擇使用第三方庫或手動解析。