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

c json to object

黃文隆1年前7瀏覽0評論

JSON(JavaScript Object Notation)是一種常見的數據格式,也是現在 Web 開發和數據交互中不可或缺的一部分。C 語言中也有一些解析 JSON 的庫,其中 cJSON 是目前使用最為廣泛的一個。 cJSON 可以將 JSON 字符串解析成 C 語言對象,使得在使用 C 語言進行 JSON 數據的處理時更為方便。cJSON 庫提供了一系列 API,可以方便地將 JSON 數據轉換成相應的 C 語言對象類型。 要使用 cJSON 進行 JSON 數據的解析,首先需要將 JSON 字符串加載到 cJSON 對象中。下面展示的是一個示例代碼,演示了如何使用 cJSON 解析 JSON 字符串并將其轉換成 C 語言的結構體。

#include <stdio.h>
#include <stdlib.h>
#include <cJSON.h>
typedef struct
{
int id;
char name[20];
double price;
} Product;
int main()
{
char *json_str = "{\"id\": 1, \"name\": \"phone\", \"price\": 999}";
cJSON *root = cJSON_Parse(json_str);
if (!root)
{
printf("Error: Failed to parse JSON string!\n");
return -1;
}
Product p;
p.id = cJSON_GetObjectItem(root, "id")->valueint;
strcpy(p.name, cJSON_GetObjectItem(root, "name")->valuestring);
p.price = cJSON_GetObjectItem(root, "price")->valuedouble;
cJSON_Delete(root);
printf("Product: { id: %d, name: %s, price: %.2f }\n", p.id, p.name, p.price);
return 0;
}
在上面的代碼中,我們定義了一個 Product 結構體,表示一個商品信息。接著,我們在 main 函數中定義了一個 JSON 字符串,并使用 cJSON_Parse 函數將其轉換成 cJSON 對象。 接著,我們使用 cJSON_GetObjectItem 函數獲取 JSON 對象中的各個屬性值,并將其賦值給 C 語言的結構體。最后,使用 cJSON_Delete 函數刪除 cJSON 對象。 通過上面的代碼示例,我們可以看出 cJSON 解析 JSON 數據的過程非常簡單。有了 cJSON,我們就可以方便地在 C 語言中使用 JSON 數據了。