![](https://img-blog.csdnimg.cn/20190927151026427.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
cjson
文章平均质量分 80
cjson源码学习、注释,已完结
killer-p
欢迎指出博客中的错误,如果你觉得对你有用,记得点赞三连,有问题可留言,会及时回复
展开
-
零基础学习cJSON 源码详解与应用 (五)修改,复制,比较cjson
文章目录一,cjson的其他函数二,学习cJSON的收获2.1 结构体的使用2.2 链表的使用2.3 字符串的处理一,cjson的其他函数1,将新的item插入数组.CJSON_PUBLIC(void) cJSON_InsertItemInArray(cJSON *array, int which, cJSON *newitem)2,将item从cjson链表中的节点脱离,成功则返回脱离的item指针,注意脱离后的item的内存不会被释放,使用完后要记得释放内存。CJSON_PUBLIC(c原创 2020-12-02 21:13:14 · 2566 阅读 · 0 评论 -
零基础学习cJSON 源码详解与应用 (四)cJSON_Parse();解析json字符串
文章目录一,解析json字符串示例二,代码解析2.1 parse_buffer 结构体2.2 skip_utf8_bom();2.3 buffer_skip_whitespace();2.4 parse_value();上一章介绍了从cjson结构体到json字符串的过程,这一章是逆过程,就是将json字符串转换成cjson结构体。逆过程与上一章思路上是一脉相承的。紧紧围绕着cjson结构体与json的格式。一,解析json字符串示例还记得在第一章第二节的应用场景示例吗,通过http接口获取到天气原创 2020-12-02 20:23:50 · 19168 阅读 · 2 评论 -
零基础学习cJSON 源码详解与应用 (三)cJSON_Print();打印json
文章目录一,cJSON_Print();源码分析二,print_value();2.1 ensure();2.2 print_string();2.3,print_number();2.4,print_array();2.5 print_object();三 ,update_offset();四,其他打印函数小结继上一章之后,这章讲json的打印。json存在的目的是为了数据交换的方便,而数据交换就比较通过传输来实现,json在互联网上的传输是以字符串的形式进行的,这就需要将cjson中一个个结构体打印原创 2020-12-02 14:31:25 · 7793 阅读 · 8 评论 -
零基础学习cJSON 源码详解与应用(二)创建json数据
文章目录一,cjson结构体二,创建一个简单的json在开始本节之前,希望你提前掌握基本的链表知识一,cjson结构体cJSON的定义如下,显然cJSON是一个链表,next指向下一个cjson,prev指向上一个json,同时还有child指向它的子节点。child节点是链头。一个cjson结构体可以看成是一个“键-值”对,指针string存放键,值依照类型不同存放在valuestring,valueint或valuedouble。其他类型的值是固定不变的,所以由type类型决定,不需要额外的原创 2020-12-02 11:13:12 · 3049 阅读 · 0 评论 -
零基础学习cJSON 源码详解与应用(一)如何学习cJSON
文章目录一,什么是json二,应用场景示例三,cjson简介一,什么是jsonJSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 易于人阅读和编写。同时也易于机器解析和生成。在程序之间进行数据交换过程中,特别是在互联网的轻量数据通信中json格式数据广泛应用。以下是一个简单的json数据的例子:{ "years": 22, "name": "fool", "man": true, "adult": false, "原创 2020-11-30 20:39:34 · 3177 阅读 · 1 评论