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

c 讀取json類型

C語(yǔ)言是一門具有廣泛應(yīng)用的編程語(yǔ)言。而隨著互聯(lián)網(wǎng)的普及,JSON(JavaScript Object Notation)這種數(shù)據(jù)交換格式也變得越來越常見。在C語(yǔ)言中,我們?nèi)绾巫x取JSON類型的數(shù)據(jù)呢?

#include#include#include#include "cjson/cJSON.h"
int main() {
// 定義一個(gè)JSON字符串
char *jsonStr = "{\"name\": \"John\", \"age\": 25}";
// 將字符串解析為JSON對(duì)象
cJSON *root = cJSON_Parse(jsonStr);
// 判斷JSON對(duì)象是否解析成功
if (root == NULL) {
printf("JSON解析失敗!\n");
return -1;
}
// 獲取JSON中的數(shù)據(jù)
cJSON *name = cJSON_GetObjectItem(root, "name");
cJSON *age = cJSON_GetObjectItem(root, "age");
// 判斷獲取數(shù)據(jù)是否成功
if (name == NULL || age == NULL) {
printf("獲取數(shù)據(jù)失敗!\n");
return -1;
}
// 打印JSON中的數(shù)據(jù)
printf("name: %s\n", name->valuestring);
printf("age: %d\n", age->valueint);
// 釋放內(nèi)存
cJSON_Delete(root);
return 0;
}

在這段代碼中,我們使用了第三方庫(kù)cJSON來解析和操作JSON數(shù)據(jù)。在函數(shù)cJSON_Parse中,我們將JSON字符串作為參數(shù)傳入,得到一個(gè)cJSON類型的JSON對(duì)象。接著,我們使用函數(shù)cJSON_GetObjectItem獲取JSON中的數(shù)據(jù),函數(shù)的第一個(gè)參數(shù)是JSON對(duì)象,第二個(gè)參數(shù)是要獲取的數(shù)據(jù)的鍵名。

如果獲取數(shù)據(jù)失敗,我們需要注意cJSON_GetObjectItem的返回值,該函數(shù)返回一個(gè)cJSON類型的對(duì)象。如果該對(duì)象為NULL,則說明獲取數(shù)據(jù)失敗。而如果獲取數(shù)據(jù)成功,我們可以通過訪問該對(duì)象的valuestringvalueint成員來獲取JSON數(shù)據(jù)的值。

最后,我們需要釋放內(nèi)存。在cJSON中,可以使用函數(shù)cJSON_Delete來銷毀JSON對(duì)象,以釋放內(nèi)存。