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

c如何遍歷json字符串數組長度

老白2年前9瀏覽0評論

在C語言中,我們可以使用JSON-C庫來解析處理JSON格式的字符串。在處理JSON字符串數組時,需要使用循環遍歷數組中的元素,以獲取其長度。

#include <stdio.h>
#include <json-c/json.h>
int main() {
const char* json_str = "[{\"name\": \"Alice\"}, {\"name\": \"Bob\"}, {\"name\": \"Charlie\"}]";
struct json_object* json_obj = json_tokener_parse(json_str);
if (json_obj == NULL) {
printf("Error: invalid JSON string!\n");
return 1;
}
if (json_object_is_type(json_obj, json_type_array)) {
int len = json_object_array_length(json_obj);
printf("The length of this array is %d.\n", len);
for (int i = 0; i < len; i++) {
struct json_object* element = json_object_array_get_idx(json_obj, i);
printf("Element %d: %s\n", i, json_object_to_json_string(element));
}
}
json_object_put(json_obj);
return 0;
}

在上面的代碼中,我們首先定義一個JSON格式的字符串json_str,其中包含了一個名為"name"的字段。接著,我們使用json_tokener_parse函數將其轉換為JSON對象json_obj。

然后,我們用json_object_is_type函數檢查json_obj是否為一個JSON數組類型。如果是,我們使用json_object_array_length函數獲取數組的長度len,并使用for循環遍歷數組中的元素,使用json_object_array_get_idx函數獲取指定下標的元素,并使用json_object_to_json_string函數將其轉換為字符串輸出。

最后,我們使用json_object_put函數釋放json_obj占用的內存。