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

c json對象 取值

榮姿康2年前8瀏覽0評論

在使用C語言處理JSON對象的時候,我們通常需要從JSON對象中獲取某個key的值。下面是一個簡單的JSON對象示例:

{
"name": "張三",
"age": 20,
"hobbies": ["籃球", "游泳"]
}

要獲取該JSON對象中的某個key的值,可以使用cJSON庫的cJSON_GetObjectItem函數。例如,要獲取該JSON對象中"name"所對應的值,可以使用以下代碼:

cJSON * json = cJSON_Parse(json_string); //將json字符串解析為cJSON對象
if(json != NULL)
{
cJSON * name = cJSON_GetObjectItem(json, "name"); //獲取"name"所對應的cJSON對象
if(name != NULL)
{
printf("名字:%s\n", name->valuestring); //輸出"name"的值
}
}

上面的代碼首先將JSON字符串解析為cJSON對象,然后使用cJSON_GetObjectItem函數獲取"name"所對應的cJSON對象。如果獲取成功,則可以使用name->valuestring來獲取"name"的值,即"張三"。

同樣的方法也適用于獲取其他key的值。例如要獲取"age"的值,可以使用以下代碼:

cJSON * json = cJSON_Parse(json_string); //將json字符串解析為cJSON對象
if(json != NULL)
{
cJSON * age = cJSON_GetObjectItem(json, "age"); //獲取"age"所對應的cJSON對象
if(age != NULL)
{
printf("年齡:%d\n", age->valueint); //輸出"age"的值
}
}

當然,如果要獲取的key對應的值是一個數組,也可以使用cJSON庫提供的相關函數來獲取每一個元素的值。