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

c json轉換為實體類對象

張吉惟2年前8瀏覽0評論

在使用C語言進行JSON串轉換時,可以用CJSON庫快速地將JSON對象轉換為C語言對象。對于轉換后的C語言對象,如果需要對其進行進一步的操作和處理,可以將其轉換為實體類對象。下面是實現CJSON轉換為實體類對象的示例代碼:

#include#include#include "cJSON.h"
// 存放JSON對象的結構體
typedef struct {
int id;
char name[128];
} Person;
// 將JSON對象轉換為Person結構體對象
Person *jsonToPerson(cJSON *json) {
Person *person = malloc(sizeof(Person));
person->id = cJSON_GetObjectItem(json, "id")->valueint;
strcpy(person->name, cJSON_GetObjectItem(json, "name")->valuestring);
return person;
}
int main() {
// JSON串
char *jsonStr = "{ \"id\": 1, \"name\": \"Tom\" }";
// 從JSON串解析出JSON對象
cJSON *json = cJSON_Parse(jsonStr);
// 將JSON對象轉換為Person結構體對象
Person *person = jsonToPerson(json);
// 打印Person結構體對象的屬性值
printf("Person[id=%d, name=%s]\n", person->id, person->name);
// 釋放內存
cJSON_Delete(json);
free(person);
return 0;
}

在這段示例代碼中,首先定義了一個Person結構體用于存放JSON轉換后的C語言對象,其具有id和name兩個屬性。然后定義一個函數jsonToPerson,其輸入參數為cJSON指針類型的json對象,返回值為Person指針類型的person對象。在函數內部,根據json對象對person對象的各個屬性進行讀取和賦值,最后返回person對象。在主函數中,先將JSON串解析為json對象,再調用jsonToPerson函數將json對象轉換為Person對象,并輸出Person對象的屬性值。最后釋放內存,程序結束。