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

c json解析為動態(tài)對象數(shù)組

夏志豪1年前7瀏覽0評論

C JSON解析為動態(tài)對象數(shù)組是一種常見的操作。C語言提供了標(biāo)準(zhǔn)庫json-c來實現(xiàn)JSON解析,將JSON數(shù)據(jù)轉(zhuǎn)換為C語言結(jié)構(gòu)化數(shù)據(jù)。動態(tài)對象數(shù)組是一個可變長度的數(shù)組,它允許我們在程序運行時動態(tài)地添加和刪除數(shù)組元素。

#include#includeint main() {
char *json_data = "{\"name\":\"Tom\", \"age\":20, \"scores\":[80, 90, 85]}";
json_object *json_obj = json_tokener_parse(json_data);
json_object *name_obj = json_object_object_get(json_obj, "name");
const char* name_str = json_object_get_string(name_obj);
json_object *age_obj = json_object_object_get(json_obj, "age");
int age_int = json_object_get_int(age_obj);
json_object *scores_obj = json_object_object_get(json_obj, "scores");
int scores_len = json_object_array_length(scores_obj);
int scores[scores_len];
for (int i = 0; i< scores_len; i++) {
json_object *score_obj = json_object_array_get_idx(scores_obj, i);
int score_int = json_object_get_int(score_obj);
scores[i] = score_int;
}
json_object_put(json_obj);
return 0;
}

首先需要準(zhǔn)備好一個JSON字符串,然后通過json_tokener_parse將其轉(zhuǎn)換為json_object對象。接下來就可以通過json_object_object_get解析對象屬性并獲取值,使用json_object_array_length獲取動態(tài)數(shù)組長度,使用json_object_array_get_idx獲取動態(tài)數(shù)組元素。

最后,需要注意的是在使用完json_object對象后需要釋放內(nèi)存,使用json_object_put函數(shù)。