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

c 遍歷json 對象的屬性值

錢斌斌2年前8瀏覽0評論

C語言中的JSON解析庫,通常都是解析完整個JSON對象,再從中獲取想要的屬性值。但是,對于需要遍歷JSON對象的屬性值的情況,也可以使用C語言來實現。

//用于遍歷JSON對象的函數
void traverse_json_object(cJSON* root){
cJSON* node = root->child;
while (node){
if (node->type==cJSON_String){
printf("Key: %s, Value: %s\n", node->string, node->valuestring);
}else if(node->type==cJSON_Number){
printf("Key: %s, Value: %g\n", node->string, node->valuedouble);
}else if(node->type==cJSON_Object){
traverse_json_object(node);//如果該節點是JSON對象,則遞歸遍歷
}
node = node->next;
}
}

本函數的作用是遍歷JSON對象的所有屬性值,并打印出屬性名和屬性值。通過傳入JSON對象的根節點,函數可以遞歸地遍歷整個對象。

//調用遍歷JSON對象的函數的代碼
int main(){
char* json_str = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\", \"books\":{\"title\":\"book1\", \"price\":20.5}}";
cJSON* root = cJSON_Parse(json_str);
traverse_json_object(root);
cJSON_Delete(root);
return 0;
}

以上是調用遍歷JSON對象函數的代碼。首先,需要將JSON字符串解析成JSON對象,然后調用函數遍歷對象,最后刪除JSON對象。

總之,使用C語言來遍歷JSON對象的屬性值可以讓我們更方便地獲取JSON數據中的信息。