色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

c json 嵌套數組

夏志豪2年前9瀏覽0評論

C JSON中的嵌套數組是指在一個數組中嵌套另一個數組的情況。對于嵌套數組,可以使用C JSON的數組和對象來表示。

//一個包含嵌套數組的示例JSON
{
"name": "張三",
"age": 25,
"interests": [
{
"name": "足球",
"level": 2,
"teams": [
"曼聯",
"巴塞羅那",
"皇家馬德里"
]
},
{
"name": "籃球",
"level": 3,
"teams": [
"湖人",
"馬刺",
"勇士"
]
}
]
}

從上面的例子可以看出,“interests”是一個包含兩個對象的數組,每個對象又包含一個名稱為“teams”的數組。

在C JSON中,我們可以使用json_array_size函數獲取數組的長度;json_array_get函數獲取數組中指定下標的值;json_object_get函數獲取對象中指定名稱的值。下面是對上面例子中的嵌套數組進行操作獲取其中“足球”這個興趣愛好的代碼:

json_t* root = json_loads(json_str, 0, NULL); //json_str是上面的JSON串
json_t* interests = json_object_get(root, "interests");
json_t* interest_football = json_array_get(interests, 0);
json_t* teams = json_object_get(interest_football, "teams");
for(int i=0; i

上面的代碼先將整個JSON串讀入一個json_t對象,然后獲取“interests”數組,獲取“足球”這個對象,再獲取“teams”數組,最后遍歷數組中的所有元素輸出。

通過C JSON訪問和操作嵌套數組實際上就是依次獲取嵌套在數組和對象中的數組和對象。需要注意的是,需要先檢查每一層獲取的json_t對象是否是正確的類型,例如是數組還是對象,否則會導致程序崩潰。