cjson是一個用C語言開發的json格式解析器,在嵌入式開發領域使用廣泛,其最大的特點是速度非常快,可以快速解析大量的json數據。除此之外,cjson還具有一個很重要的特性,就是它可以兼容C語言,使用過程中非常方便。
在cjson中,我們可以通過predefined.h中的一些宏定義來支持C語言的類型,比如支持int、float、double、char和string等常見的類型,從而可以實現快速的json數據解析。接下來我們就來看一下cjson中,如何兼容C語言。
/* 數字類型 */ #define cJSON_Number 2 /* 字符串類型 */ #define cJSON_String 3 /* 對象類型 */ #define cJSON_Object 4 /* 數組類型 */ #define cJSON_Array 5 /* Bool類型 */ #define cJSON_True (1<< 0) #define cJSON_False (1<< 1) /* Null類型 */ #define cJSON_NULL (1<< 2) /* 定義cjson的容器類型 */ typedef struct cJSON{ struct cJSON *next; // JSON指針 struct cJSON *prev; // JSON指針 struct cJSON *child; // JSON指針 int type; // JSON類型 char *valuestring; // JSON字符串值 int valueint; // JSON整型值 double valuedouble; // JSON浮點型值 } cJSON;
通過以上代碼我們可以看到,cjson支持了常用的數字類型(Number)、字符串類型(String)、對象類型(Object)、數組類型(Array)、Bool類型(True、False)和Null類型,這使得我們可以很方便的解析任意格式的json數據。
總的來說,cjson是一個非常優秀的json格式解析器,并且它兼容C語言,使用非常方便,速度非常快。因此,在嵌入式開發領域中,cjson是很多人的首選,可以幫助開發者快速的解析JSON格式的數據,提高開發效率。
上一篇css格式化json