C語言中,有很多處理JSON格式數據的函數,其中比較常用的是cJSON庫。
#include "cJSON.h"
cJSON是一個輕量級的、可移植的、高效的C語言JSON解析器,可以快速地將JSON數據解析成C語言的數據結構。
比如,我們有一個JSON格式的字符串:
char *json_str = "{\"name\":\"Tom\",\"age\":20,\"sex\":\"male\"}";
我們可以使用cJSON_Parse函數來解析它:
cJSON *root = cJSON_Parse(json_str);
其中,root是解析后的JSON對象。
我們可以使用cJSON_GetObjectItem函數來獲取屬性值:
cJSON *name = cJSON_GetObjectItem(root, "name"); cJSON *age = cJSON_GetObjectItem(root, "age"); cJSON *sex = cJSON_GetObjectItem(root, "sex");
得到的name、age、sex分別是cJSON類型的指針,在需要使用時需要轉換成對應的數據類型。比如,如果我們需要獲取age的值:
int age_value = age->valueint;
除了解析JSON數據以外,cJSON還提供了一些其他的函數,比如cJSON_CreateObject用于創建一個空的JSON對象,cJSON_AddItemToObject用于向JSON對象中添加屬性等等。
總的來說,cJSON是一個十分方便實用的JSON解析庫,可以快速地解析JSON數據,提高程序的處理效率。
下一篇c語言json get