JSON(JavaScript Object Notation)是一種輕量級的數據交換格式。在C中,可以使用原生的JSON解析庫來解析和處理JSON數據。
在C中,可以使用cJSON作為原生的JSON解析庫。cJSON可以實現將JSON數據解析為C結構體并進行操作。
// 示例:解析JSON數據 #include <stdio.h> #include "cJSON.h" int main() { char *json_str = "{\"name\": \"小明\", \"age\": 18}"; cJSON *root = cJSON_Parse(json_str); char *name = cJSON_GetObjectItem(root, "name")->valuestring; int age = cJSON_GetObjectItem(root, "age")->valueint; printf("name: %s, age: %d\n", name, age); return 0; }
在上面的示例中,首先定義一個JSON字符串,然后使用cJSON_Parse()將其解析為CJSON對象,再使用cJSON_GetObjectItem()方法來獲取JSON中相應的值。
除了解析外,cJSON還支持創建JSON對象或者數組、添加、修改、查找等多種JSON操作。
// 示例:創建JSON數據 #include <stdio.h> #include "cJSON.h" int main() { cJSON *root = cJSON_CreateObject(); cJSON_AddStringToObject(root, "name", "小明"); cJSON_AddNumberToObject(root, "age", 18); cJSON_AddItemToObject(root, "hobbies", cJSON_CreateStringArray( (const char **)&("reading"), 1 )); char *json_str = cJSON_Print(root); printf("%s\n", json_str); cJSON_Delete(root); return 0; }
在上面的示例中,首先通過cJSON_CreateObject()創建一個JSON對象,然后使用cJSON_AddStringToObject()、cJSON_AddNumberToObject()和cJSON_AddItemToObject()等方法分別添加字符串、數字和數組類型的JSON數據。最后使用cJSON_Print()方法輸出JSON字符串,并使用cJSON_Delete()銷毀JSON對象。
總之,cJSON作為原生的JSON解析庫,具有處理JSON數據的功能和性能。使用它可以輕松地解析和操作JSON數據。
上一篇vue dom 復用
下一篇vue dom取值