資料介紹
軟件簡介
C語言JSON解析庫:Exjson
什么是Exjson?
Exjson是一款高性能的基于Flex & Bison的?JSON?解析器,Xserver引擎自帶,其他需要使用的只需要引入幾個頭文件和源文件即可
Exjson適應場合
Exjson適合于在需要在底層C語言或者C++語言層面使用?JSON?功能的場景。目前大部分接口使用的都是?JSON?格式傳輸,后面增加?xml解析庫
注意
Exjson支持注釋,Exjson中注釋以?#
?或者//
?開頭,一直延續到行尾,如下是合格的?Exjson格式
{ "name": "Exjson", // 名字:Exjson "version": "1.0", # 版本號 "platform": [ "MacOSX", "Linux", "Windows" ] }
APIs
// 生成一個EXJSON對象 EXJSON_API EXJSON * INIT_EXJSON(); // 生成一個 string: long int 的鍵值對 EXJSON_API int add_object_int(EXJSON *exjson, char *key, long val); // 生成一個 string: double 的鍵值對 EXJSON_API int add_object_double(EXJSON *exjson, char *key, double val); // 生成一個 string : string 的鍵值對 EXJSON_API int add_object_string(EXJSON *exjson, char *key, char *val); // 生成一個 string: {} 的鍵值對 EXJSON_API int add_object_object(EXJSON *exjson, char *key, void *val); // 生成一個 string: [] 的鍵值對 EXJSON_API int add_object_array(EXJSON *exjson, char *key, void *val); // 上面添加方法的一個通用函數 EXJSON_API int add_object_ptr(EXJSON *exjson, char *key, void *val, unsigned char val_type); // 生成一個 long int 的一個數組元素 EXJSON_API int add_array_int(EXJSON *exjson, long val); // 生成一個 double 的一個數組元素 EXJSON_API int add_array_double(EXJSON *exjson, double val); // 生成一個 string 的一個數組元素 EXJSON_API int add_array_string(EXJSON *exjson, char *val); // 生成一個 對象{} 的一個數組元素 EXJSON_API int add_array_object(EXJSON *exjson, void *val); // 生成一個 數組的 的一個數組元素 EXJSON_API int add_array_array(EXJSON *exjson, void *val); // 上面方法的通用函數 EXJSON_API int add_array_ptr(EXJSON *exjson, void *val, unsigned char val_type); // 打印 EXJSON 信息 PRINT_EXJSON(exjson); // 從 EXJSON結構中獲取數據 EXJSON_API void *exjson_get_val_from_key(EXJSON *exjson, char *key); EXJSON_API void *exjson_get_val_from_index(EXJSON *exjson, int index); // 編碼JSON字符串為EXJSON結構 EXJSON_API extern EXJSON *decode_json(char *json_string); // EXJSON結構解碼為JSON字符串 EXJSON_API char *encode_json(EXJSON *exjson); // 使用完畢后,需要釋放內存 EXJSON_API void destroy_exjson(EXJSON *exjson);
示例
#include#include "exjson.h" int main(int argc, char *argv[]) { EXJSON *v = decode_json("{\n" " "b": 100,\n" " "a":{\n" " "a": "b"\n" " }\n" "}"); // 返回的字符串因為分配了內存,需要手動釋放 char *str = encode_json(v); printf("%s", str); free(str); destroy_exjson(v); return 0; }
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- C和C++實物精選《C專家編程》 0次下載
- C和C++經典著作《C和指針》 0次下載
- C和C++經典著作-C專家編程.PDF 0次下載
- C++常見設計模式解析與實現 11次下載
- 如何深度解析C++拷貝構造函數詳細資料說明
- C++開源庫的詳細資料合集免費下載
- C++的框架、庫和資源資料匯總大全
- C++的開源庫大全詳細資料說明
- C++的框架、庫和代碼分析的資料大全
- C++程序設計教程之C++工具的詳細資料說明 4次下載
- C++程序設計教程之C++的初步知識的詳細資料說明 31次下載
- VISUAL C++教程之VISUAL C++的安裝和使用方法 19次下載
- c280x / c2801x C / C++頭文件和外周 實例快速啟動 7次下載
- The C++ Standard Library 0次下載
- c++標準庫手冊 43次下載
- 基于OpenHarmony標準系統的C++公共基礎類庫案例:SafeQueue 103次閱讀
- 基于OpenHarmony標準系統的C++公共基礎類庫案例:SafeStack 97次閱讀
- 基于OpenHarmony標準系統的C++公共基礎類庫案例:SafeBlockQueue 116次閱讀
- OpenHarmony標準系統C++公共基礎類庫案例:HelloWorld 220次閱讀
- vb語言和c++語言的區別 1484次閱讀
- C++簡史:C++是如何開始的 415次閱讀
- C語言和C++中那些不同的地方 748次閱讀
- 使用C++編寫通用庫并在 Rust 中使用它 (WASI) 893次閱讀
- C與C++混合編程是什么 1309次閱讀
- C++語言的發展 558次閱讀
- C/C++基礎知識匯總 2226次閱讀
- C++:引用的使用場景 3940次閱讀
- C++封裝:this指針 3371次閱讀
- 基于STM32F4的 C++封裝(完整代碼) 9553次閱讀
- C++輸入/輸出流 876次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數據手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多