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

c json 教程

方一強1年前8瀏覽0評論

在現代編程語言中,JSON(JavaScript Object Notation)已經成為了一種廣泛使用的格式,用于交換數據。C也有一些庫可以解析JSON,本文就為大家介紹一下如何使用C語言解析JSON。

C語言中,我們可以使用一個名為 cJSON 的庫來解析 JSON。cJSON 是一個輕型的JSON解析器,它可以將 JSON 格式的字符串解析成為一個 JSON 對象,同時也可以將一個 JSON 對象序列化成為 JSON 格式的字符串。

#include <stdio.h>
#include <cJSON.h>
int main() {
char* json_str = "{\"name\": \"Tom\", \"age\": 18, \"is_student\": true}";
cJSON* json = cJSON_Parse(json_str);
if (!json) {
printf("Error before: [%s]\n", cJSON_GetErrorPtr());
} else {
cJSON* name = cJSON_GetObjectItemCaseSensitive(json, "name");
printf("name: %s\n", name->valuestring);
cJSON* age = cJSON_GetObjectItemCaseSensitive(json, "age");
printf("age: %d\n", age->valueint);
cJSON* is_student = cJSON_GetObjectItemCaseSensitive(json, "is_student");
printf("is_student: %d\n", cJSON_IsTrue(is_student));
}
cJSON_Delete(json);
return 0;
}

上述示例中,我們手動創建了一個 JSON 數據字符串,通過 cJSON_Parse 函數解析 JSON 字符串,得到一個 cJSON 對象。cJSON_GetObjectItemCaseSensitive 函數可以根據鍵值獲取對應的值,然后我們就可以將其轉換成相應的類型使用了。最后,我們要別忘了釋放掉 cJSON 對象。

除了解析 JSON 字符串外,cJSON 庫還支持將 c 的結構體序列化成 JSON 格式的字符串。不過具體的用法這里不再贅述,大家可以自行查看 cJSON 庫的文檔。