在C語言中,我們常常需要將JSON字符串轉(zhuǎn)換成對象來操作數(shù)據(jù)。這個過程需要使用一些庫函數(shù),下面我們就來介紹如何將JSON字符串轉(zhuǎn)換成對象。
#include <stdio.h> #include <stdlib.h> #include <cJSON.h> int main() { char* json_str = "{\"name\": \"Tom\", \"age\": 18}"; cJSON* json = cJSON_Parse(json_str); // 將JSON字符串轉(zhuǎn)換成CJSON對象 if(json == NULL) { printf("JSON格式錯誤\n"); return 1; } cJSON* name = cJSON_GetObjectItem(json, "name"); // 獲取name屬性 cJSON* age = cJSON_GetObjectItem(json, "age"); // 獲取age屬性 printf("姓名:%s,年齡:%d\n", name->valuestring, age->valueint); cJSON_Delete(json); // 釋放內(nèi)存 return 0; }
首先,我們需要引入cJSON.h頭文件。然后,我們定義一個JSON字符串,使用函數(shù)cJSON_Parse將其轉(zhuǎn)換成CJSON對象。
接下來,我們使用函數(shù)cJSON_GetObjectItem獲取JSON對象中的屬性值。在這個例子中,我們獲取了name和age兩個屬性值,并且輸出到控制臺。
最后,我們使用函數(shù)cJSON_Delete釋放內(nèi)存。