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

c json操作 數組

劉姿婷2年前9瀏覽0評論

在C語言中,JSON的操作需要引用第三方庫,在此我們使用cJSON這個庫進行JSON的解析和構建。

首先我們來構建一個JSON數組:

cJSON* array = cJSON_CreateArray();
cJSON* element1 = cJSON_CreateObject();
cJSON_AddStringToObject(element1, "name", "Michael");
cJSON_AddNumberToObject(element1, "age", 25);
cJSON_AddItemToArray(array, element1);
cJSON* element2 = cJSON_CreateObject();
cJSON_AddStringToObject(element2, "name", "Lucas");
cJSON_AddNumberToObject(element2, "age", 28);
cJSON_AddItemToArray(array, element2);

以上代碼中,首先使用cJSON_CreateArray()創建了一個JSON數組對象,然后創建了兩個JSON對象element1和element2,分別表示數組中的兩個元素,使用cJSON_AddStringToObject()和cJSON_AddNumberToObject()向每個元素中添加了兩個屬性,最后使用cJSON_AddItemToArray()向數組中添加了這兩個元素。

接下來我們來解析這個JSON數組:

cJSON* array = cJSON_Parse(json_str);
for (int i = 0; i< cJSON_GetArraySize(array); i++)
{
cJSON* element = cJSON_GetArrayItem(array, i);
char* name = cJSON_GetObjectItem(element, "name")->valuestring;
int age = cJSON_GetObjectItem(element, "age")->valueint;
printf("name:%s, age:%d\n", name, age);
}

以上代碼中,首先使用cJSON_Parse()將一個JSON字符串解析成JSON數組對象,然后使用cJSON_GetArraySize()獲取數組元素個數,循環使用cJSON_GetArrayItem()獲取數組中的每個元素,使用cJSON_GetObjectItem()獲取元素中的屬性值,最后輸出每個元素的屬性。