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

c 從字符串解析json

林子帆1年前8瀏覽0評論

C語言可以通過解析字符串來讀取JSON格式數據。JSON是一種輕量級的數據交換格式,它的數據結構是類似于C語言的數組與結構體。JSON格式數據包括鍵-值對和數組,可以嵌套使用。

在C語言中,我們可以使用第三方庫cJSON來解析JSON格式數據。首先,我們需要將JSON格式數據轉換為C語言的字符串,然后通過cJSON庫將字符串解析成cJSON類型。

// 引入cJSON庫
#include <stdio.h>
#include <cJSON.h>
int main() {
// 定義JSON字符串
char* json_str = "{\"name\":\"張三\",\"age\":18,\"hobby\":[\"籃球\",\"游泳\"]}";
// 創建cJSON對象
cJSON* json_obj = cJSON_Parse(json_str);
// 讀取JSON數據
char* name = cJSON_GetObjectItem(json_obj, "name")->valuestring;
int age = cJSON_GetObjectItem(json_obj, "age")->valueint;
cJSON* hobby = cJSON_GetObjectItem(json_obj, "hobby");
// 讀取JSON數組數據
int hobby_count = cJSON_GetArraySize(hobby);
char* hobby_array[hobby_count];
for(int i = 0; i< hobby_count; i++) {
hobby_array[i] = cJSON_GetArrayItem(hobby, i)->valuestring;
}
// 打印JSON數據
printf("名字:%s\n年齡:%d\n愛好:", name, age);
for(int i = 0; i< hobby_count; i++) {
printf("%s ", hobby_array[i]);
}
return 0;
}

在上面的示例中,我們使用了cJSON_Parse函數將JSON字符串解析成cJSON類型的JSON對象,然后使用cJSON_GetObjectItem函數讀取JSON數據。如果要讀取JSON數組數據,需要使用cJSON_GetArrayItem和cJSON_GetArraySize函數。

總的來說,C語言可以使用cJSON庫解析JSON格式數據,并且可以通過cJSON_GetObjectItem和cJSON_GetArrayItem函數讀取JSON數據。這樣我們可以在C語言中方便地使用JSON格式數據。