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

c json 對象

錢瀠龍2年前8瀏覽0評論

C JSON對象是一種輕量級的數據交換格式,它具有易讀、易寫、易解析的特點。JSON對象由鍵值對組成,以大括號{}包裹。鍵值對之間使用逗號,分隔,鍵名和鍵值之間使用冒號:分隔。JSON中的鍵名必須為字符串類型,鍵值可以是字符串、數字、布爾值、數組、對象等類型。

{
"name": "Lucy",
"age": 25,
"hobbies": ["reading", "running"],
"job": {
"company": "ABC Inc.",
"position": "manager"
}
}

在C語言中,我們可以使用第三方庫cJSON來解析JSON對象。cJSON提供了一系列的API,包括創建JSON對象、解析JSON字符串、獲取JSON對象的值等等。

創建JSON對象:

cJSON *person = cJSON_CreateObject();          
cJSON_AddStringToObject(person, "name", "Lucy");       
cJSON_AddNumberToObject(person, "age", 25);        
cJSON_AddItemToObject(person, "hobbies", cJSON_CreateString("reading"));  
cJSON_AddItemToArray(cJSON_GetObjectItem(person, "hobbies"), cJSON_CreateString("running"));
cJSON_AddItemToObject(person, "job", job = cJSON_CreateObject()); 
cJSON_AddStringToObject(job, "company", "ABC Inc."); 
cJSON_AddStringToObject(job, "position", "manager");

解析JSON字符串:

char *json_str = "{\"name\":\"Lucy\",\"age\":25,\"hobbies\":[\"reading\",\"running\"],\"job\":{\"company\":\"ABC Inc.\",\"position\":\"manager\"}}";
cJSON *person = cJSON_Parse(json_str);

獲取JSON對象的值:

char *name = cJSON_GetObjectItem(person, "name")->valuestring;
int age = cJSON_GetObjectItem(person, "age")->valueint;
cJSON *hobbies = cJSON_GetObjectItem(person, "hobbies");
for (int i = 0; i< cJSON_GetArraySize(hobbies); i++) {
char *hobby = cJSON_GetArrayItem(hobbies, i)->valuestring;
}
cJSON *job = cJSON_GetObjectItem(person, "job");
char *company = cJSON_GetObjectItem(job, "company")->valuestring;
char *position = cJSON_GetObjectItem(job, "position")->valuestring;

在C語言中,使用cJSON庫可以方便地解析JSON對象,實現數據交換功能。同時,注意在使用cJSON時需要注意內存管理,確保釋放不需要的JSON對象。