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

c 把JSON格式轉換數組

洪振霞2年前9瀏覽0評論

在C語言中,我們可以使用json-c庫將JSON格式的數據轉換為數組。下面是一個簡單的例子:

#include#includeint main() {
// 創建JSON對象
struct json_object *jobj = json_object_new_object();
// 添加鍵值對
json_object_object_add(jobj, "name", json_object_new_string("Tom"));
json_object_object_add(jobj, "age", json_object_new_int(20));
json_object_object_add(jobj, "gender", json_object_new_string("male"));
// 轉換為JSON字符串
const char *json_str = json_object_to_json_string(jobj);
printf("JSON字符串:%s\n", json_str);
// 解析JSON字符串為數組
struct json_object *jarr;
json_tokener *tokener = json_tokener_new();
jarr = json_tokener_parse_ex(tokener, json_str, strlen(json_str));
json_tokener_free(tokener);
// 遍歷數組
int len = json_object_array_length(jarr);
for (int i = 0; i< len; i++) {
struct json_object *element = json_object_array_get_idx(jarr, i);
printf("元素[%d]類型:%s\n", i, json_type_to_name(json_object_get_type(element)));
}
json_object_put(jobj);
json_object_put(jarr);
return 0;
}

在上面的例子中,我們首先創建了一個JSON對象jobj,并添加了三個鍵值對。然后使用json_object_to_json_string函數將其轉換為JSON字符串。接著,我們使用json_tokener_parse_ex函數將JSON字符串解析為數組jarr,并使用json_object_array_length和json_object_array_get_idx函數遍歷數組中的元素。

需要注意的是,在使用完JSON對象和數組之后,需要調用json_object_put函數釋放相應的內存空間。