1. 程式人生 > >cJSON庫介紹

cJSON庫介紹

cJSON簡介:

JSON(JavaScriptObject Notation)是一種輕量級的資料交換格式。它基於JavaScript的一個子集。JSON採用完全獨立於語言的文字格式,但是也使用了類似於C語言家族的習慣。這些特性使JSON成為理想的資料交換語言。易於人閱讀和編寫,同時也易於機器解析和生成。

cJSON一個超輕巧,攜帶方便,單檔案,簡單的可以作為ANSI-C標準的JSON解析器。

cJSON結構體:

typedefstruct cJSON {

structcJSON *next,*prev;

struct cJSON *child;

int type;

char * valuestring;

int valueint;

double valuedouble;

char *string;

}cJSON;

1cJSON儲存的時候是採用連結串列儲存的,其訪問方式很像一顆樹。每一個節點可以有兄妹節點,通過next/prev指標來查詢,它類似雙向連結串列;每個節點也可以有孩子節點,通過child指標來訪問,進入下一層。

不過,只有節點是物件或陣列才可以有孩子節點。

2type一共有7種取值,分別是:

#define cJSON_False 0

#define cJSON_True 1

#define cJSON_NULL 2

#define cJSON_Number 3

#define cJSON_String 4

#define cJSON_Array 5

#define cJSON_Object 6

若是Number型別,則valueintvaluedouble中儲存著值,若你期望的是int,則訪問valueint,若期望的是double,則訪問valuedouble,可以得到值。

若是String型別的,則valuestring中儲存著值,可以訪問valuestring得到值。

3string中存放的是這個節點的名字。

用法:

1、只需在函式中includecJSON.h標頭檔案,然後和cJSON.c或庫檔案libcJSON.a一起編譯即可使用。

2、具體函式用法詳見cJSON.h中註釋。