C JSON是一種輕量級的數據交換格式,它具有可讀性強、易于解析、易于生成的特點。同時,C語言也提供了一些解析JSON數據的庫,其中使用最為廣泛的是開源的u000d u000a。
#include <stdio.h> #include <cjson/cJSON.h> int main(int argc, char** argv) { const char* json_string = "{\"name\":\"張三\",\"age\":18,\"gender\":\"男\"}"; cJSON* root = cJSON_Parse(json_string); if (root == NULL) { printf("json字符串解析失敗\n"); return -1; } cJSON* name = cJSON_GetObjectItem(root, "name"); if (name != NULL) { printf("姓名:%s\n", name->valuestring); } cJSON* age = cJSON_GetObjectItem(root, "age"); if (age != NULL) { printf("年齡:%d\n", age->valueint); } cJSON* gender = cJSON_GetObjectItem(root, "gender"); if (gender != NULL) { printf("性別:%s\n", gender->valuestring); } cJSON_Delete(root); return 0; }
以上代碼演示了如何使用CJSON解析一段JSON字符串,其中u000d u000a的GetObjectItem函數用于獲取指定字段名對應的值,并提供了一系列輔助函數以獲取具體數值類型、字符串類型等。
總體而言,C JSONu000d u000a的使用簡單易懂,可以幫助開發者快速的完成JSON數據的解析和生成。同時,該庫也擁有廣泛的社區支持,可以滿足各種需求。