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

c 中的json與對象轉(zhuǎn)換

林玟書2年前8瀏覽0評論

JSON(JavaScript Object Notation,JavaScript 對象表示法)是一種輕量級數(shù)據(jù)交換格式,常用于客戶端和服務(wù)器之間的數(shù)據(jù)傳輸,在 C 語言中,我們也可以使用 JSON 和對象相互轉(zhuǎn)換。

在 C 中,一個JSON對象采用 key-value 的存儲方式,可以使用 cJSON 庫來解析和構(gòu)造 JSON。

#include <stdio.h>
#include <cJSON.h>
int main() {
// 創(chuàng)建一個JSON對象,key 為 name,value 為 John
cJSON* json = cJSON_CreateObject();
cJSON_AddStringToObject(json, "name", "John");
// 將JSON對象轉(zhuǎn)換為字符串
char* json_str = cJSON_Print(json);
printf("JSON string: %s\n", json_str);
// 從字符串解析出JSON對象
cJSON* new_json = cJSON_Parse(json_str);
const char* name = cJSON_GetObjectItem(new_json, "name")->valuestring;
printf("Name: %s\n", name);
// 釋放內(nèi)存
cJSON_Delete(json);
cJSON_Delete(new_json);
free(json_str);
return 0;
}

上述代碼中,我們使用 cJSON_CreateObject 函數(shù)創(chuàng)建一個空的 JSON 對象,然后使用 cJSON_AddStringToObject 函數(shù)添加一個 key 為 name,value 為 John 的數(shù)據(jù)。接著,我們使用 cJSON_Print 函數(shù)將 JSON 對象轉(zhuǎn)換為字符串,并輸出到控制臺。

然后,我們又使用 cJSON_Parse 函數(shù)將 JSON 字符串解析為一個新的 JSON 對象,并使用 cJSON_GetObjectItem 函數(shù)獲取其中的 name 值,并輸出到控制臺。

最后,我們使用 cJSON_Delete 函數(shù)釋放創(chuàng)建的 JSON 對象和解析出的 JSON 對象,并使用 free 函數(shù)釋放 JSON 字符串占用的內(nèi)存。

通過 cJSON 庫,我們可以很方便地進(jìn)行 JSON 和對象之間的轉(zhuǎn)換,方便了程序員在 C 中進(jìn)行 JSON 數(shù)據(jù)的處理。