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

c 字符串json轉對象

江奕云2年前9瀏覽0評論

在C語言開發中,經常需要處理JSON格式的數據。在將JSON格式的字符串轉成對象時,我們可以使用 cJSON 庫來實現。

#include "cJSON.h"
#include <stdio.h>
int main() {
char *json_str = "{ \"name\":\"Tom\", \"age\":18 }";
cJSON *json_obj = cJSON_Parse(json_str);
if (json_obj == NULL) {
printf("Error before: [%s]\n", cJSON_GetErrorPtr());
return 1;
}
const cJSON *name = cJSON_GetObjectItemCaseSensitive(json_obj, "name");
const cJSON *age = cJSON_GetObjectItemCaseSensitive(json_obj, "age");
printf("%s is %d years old.\n", name->valuestring, age->valueint);
cJSON_Delete(json_obj);
return 0;
}

在這個示例中,我們首先定義一個字符串 json_str,它包含了 JSON 格式的數據。然后調用 cJSON_Parse 函數將字符串轉換成 cJSON 對象。該函數會自動為我們分配一個 cJSON 結構體并將數據轉換過來,同時返回一個指向該結構體的指針。

我們可以通過 cJSON_GetObjectItemCaseSensitive 函數獲取到該結構體中的屬性,也就是 JSON 中的 key-value 鍵值對。注意,該函數使用的是大小寫敏感的比較,因此需要保證輸入參數的大小寫與 JSON 字符串中保持一致。

示例中,我們獲取 key 為 "name" 和 "age" 的屬性值,分別為字符和整型。然后輸出這些值,并最后調用 cJSON_Delete 函數釋放 cJSON 對象的內存。