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

c 對json鍵值的提取

吉茹定2年前7瀏覽0評論

在C語言中,提取JSON鍵值是一個常見的任務。JSON(JavaScript對象表示法)是一種輕量級的數據交換格式,常用于Web服務端和客戶端之間的數據傳輸。下面是一個基本的JSON示例:

{
"name": "Alice",
"age": 25,
"city": "Shanghai"
}

在上面的JSON對象中,每個鍵都有一個對應的值。我們需要通過C語言來提取這些鍵值。

在C語言中,我們使用JSON庫來處理JSON數據。目前,最流行的JSON庫是cJSON。cJSON是一個輕量級、簡單易用的JSON庫,可以用于解析和生成JSON數據。

下面是使用cJSON庫從上面的JSON對象中提取鍵值的示例代碼:

#include <stdio.h>
#include <cJSON.h>
int main()
{
char *json_string = "{\n"
"    \"name\": \"Alice\",\n"
"    \"age\": 25,\n"
"    \"city\": \"Shanghai\"\n"
"}";
cJSON *json = cJSON_Parse(json_string);
if (json != NULL)
{
cJSON *name = cJSON_GetObjectItem(json, "name");
cJSON *age = cJSON_GetObjectItem(json, "age");
cJSON *city = cJSON_GetObjectItem(json, "city");
if (name != NULL && name->valuestring != NULL)
{
printf("Name: %s\n", name->valuestring);
}
if (age != NULL && cJSON_IsNumber(age))
{
printf("Age: %d\n", age->valueint);
}
if (city != NULL && city->valuestring != NULL)
{
printf("City: %s\n", city->valuestring);
}
cJSON_Delete(json);
}
return 0;
}

在上面的代碼中,我們首先將JSON字符串轉換為cJSON對象,然后通過cJSON_GetObjectItem函數獲取每個鍵對應的cJSON對象。接著,我們使用cJSON對象的valuestring和valueint屬性來獲取對應的字符串和數字值。

在使用cJSON庫處理JSON數據時,需要注意以下幾點:

  • 使用cJSON_Parse函數將JSON字符串轉換為cJSON對象。
  • 使用cJSON_GetObjectItem函數獲取JSON對象中的鍵值。
  • 使用cJSON_Delete函數釋放cJSON對象。