JSON簡介
JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,可以把JSON的結構理解成無須的。可嵌套的key_value鍵值對集合,這些key_value鍵值對是以結構體或數組的形式來組織的。同一級的key-value是以一個','(逗號)隔開,每個key-value鍵值對是由一個key後面緊接一個“:”(冒號),冒號後面是這個key對應的value,Key是一個word,由大小寫字母、下劃線以及數字組成的,可以由雙引號封閉,也可以不加雙引號;而value的取值集爲:Number、Boolean(true或false)、null、String、Object及Array
Number:數值,包括整型數字與浮點數,如123/0.08、
String:字符串,是以雙引號封閉起來的一串字符,使用反斜槓來轉義,如: \\、 \n
Object:對象,也可以理解成一個結構體,是以一對大括號封閉起來的無序的key-value鍵值對集合
Array:數組,JSON的數組是以一個以中括號封閉起來的value集合,數組內的各個數據成員可以不一樣。
CJSON介紹:
cJSON是一個超輕巧,攜帶方便,單文件,簡單的可以作爲ANSI-C標準的JSON解析器。
typedef struct cJSON {
struct cJSON *next,*prev; //cJSON是一個鏈表結構,這裏指向它的前一個和後一個節點
struct cJSON *child; //cJSON的子節點,value是object
int type; //cJSON的類型
char *valuestring; //value值,如果是string
int valueint; //如果value是int,int的值
double valuedouble; //如果value是double,double的值
char *string; //key值
} cJSON;