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

c 解析json多維數組

江奕云2年前9瀏覽0評論

在C語言中,解析JSON格式的數據是一項非常重要的工作。其中,解析JSON多維數組更是一項常見的需求。

可以使用一些第三方庫,如cJSON、ujson等來完成JSON數據的解析。這里,我們以cJSON為例來演示在C語言中如何解析JSON多維數組。

// JSON數據
{
"name": "張三",
"age": 18,
"courses": [
{
"name": "數學",
"score": 90
},
{
"name": "語文",
"score": 80
}
]
}
// C語言代碼
#include <stdio.h>
#include <cJSON.h>
int main() {
const char* json = "{\"name\":\"張三\",\"age\":18,\"courses\":[{\"name\":\"數學\",\"score\":90},{\"name\":\"語文\",\"score\":80}]}";
cJSON* root = cJSON_Parse(json);  // 解析JSON數據
if (root != NULL) {
cJSON* courses = cJSON_GetObjectItem(root, "courses"); // 獲取courses數組
int size = cJSON_GetArraySize(courses); // 獲取數組長度
for (int i = 0; i< size; i++) {
cJSON* course = cJSON_GetArrayItem(courses, i); // 獲取單個course對象
cJSON* name = cJSON_GetObjectItem(course, "name"); // 獲取名稱
cJSON* score = cJSON_GetObjectItem(course, "score"); // 獲取分數
printf("課程名稱:%s,成績:%d\n", name->valuestring, score->valueint);
}
cJSON_Delete(root); // 釋放內存
}
return 0;
}

通過cJSON庫提供的函數,我們可以非常容易地獲取JSON數據中的多維數組,并遍歷其中的每個元素。