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

cjson解析多個json串

阮建安1年前9瀏覽0評論

cJSON庫是一款輕量級的C語言庫,用于解析和生成JSON格式數據。它可以方便地將JSON格式數據轉換為C語言中的數據結構,同時也可以將C語言中的數據結構轉換為JSON格式數據。在實際開發中,經常需要解析多個JSON串,本文將介紹如何使用cJSON解析多個JSON串。

首先,需要使用cJSON提供的函數cJSON_Parse()來解析JSON串,函數原型如下:

cJSON* cJSON_Parse(const char *value);

其中,value參數是需要被解析的JSON串。函數返回一個cJSON類型的指針,表示解析后的JSON數據。

下面是解析多個JSON串的代碼示例:

#include <stdio.h>
#include <cJSON.h>
int main()
{
const char* json1 = "{\"name\":\"Tom\",\"age\":12}";
const char* json2 = "{\"name\":\"Jerry\",\"age\":16}";
cJSON* root1 = cJSON_Parse(json1);
cJSON* root2 = cJSON_Parse(json2);
if (root1 && root2)
{
cJSON* name1 = cJSON_GetObjectItem(root1, "name");
cJSON* age1 = cJSON_GetObjectItem(root1, "age");
cJSON* name2 = cJSON_GetObjectItem(root2, "name");
cJSON* age2 = cJSON_GetObjectItem(root2, "age");
if (name1 && age1 && name2 && age2)
{
printf("name1=%s, age1=%d\n", name1->valuestring, age1->valueint);
printf("name2=%s, age2=%d\n", name2->valuestring, age2->valueint);
}
cJSON_Delete(root1);
cJSON_Delete(root2);
}
return 0;
}

在以上代碼中,首先定義了兩個JSON串json1json2,然后分別使用cJSON_Parse()函數將它們解析成JSON數據。接著,通過cJSON_GetObjectItem()函數獲取了JSON對象中的各個屬性,最后將它們打印出來。注意,打印JSON對象中的屬性時,需要使用valuestringvalueint成員。

最后,使用cJSON_Delete()函數釋放JSON數據的內存。