当前位置:网站首页 > 技术博客 > 正文

c语言输出json格式



大家好,又见面了,我是你们的朋友全栈君。

为什么选择cJSON来解析JSON字符串?因为简洁又简单,而且效率又快,cJSON工程文件也非常简单,仅一个.c文件和一个.h文件!

如果要自己写的话就是重造轮子了,况且效率上也不一定会比cJSON更好!

且文件体积大小不到30k,源代码思路也非常清晰,也非常适合研究。

当我们下载好cJSON只需要把.c和.h文件包含文件拷贝到我们工程目录下,并将头文件和实现文件包含进来就可以使用了!

cJSON使用数据结构链表的方式来存储js对象。

正所谓万丈高楼平地起,先从最简单的开始!

先来介绍四个常用的cJSON函数:

作用:将一个JSON数据包,按照cJSON结构体的结构序列化整个数据包,并在堆中开辟一块内存存储cJSON结构体

返回值:成功返回一个指向内存块中的cJSON的指针,失败返回NULL

作用:获取JSON字符串字段值

返回值:成功返回一个指向cJSON类型的结构体指针,失败返回NULL

作用:将cJSON数据解析成JSON字符串,并在堆中开辟一块char*的内存空间存储JSON字符串

返回值:成功返回一个char*指针该指针指向位于堆中JSON字符串,失败返回NULL

作用:释放位于堆中cJSON结构体内存

返回值:无

假如说有这样的一个JSON字符串

这是最简单的JSON字符串

我们首先要先将这个字符串打包成cJSON数据格式

打包后使用if语句或三目表达式判断一下是否将JSON字符串打包成cJSON数据格式

最后别忘记释放内存

完整代码:

是不是很easy?下面来教大家如何使用cJSON解析数组!

在开始前介绍一个函数

作用:获取数组成员对象个数 返回值:数组成员对象个数

首先第一步打包

第二步判断打包是否成功

第三步获取数组对象

第四步获取数组对象个数便于循环

第五步获取test_arr数组对象孩子节点

第六步循环获取数组下每个字段的值并使用cJSON_Print打印:

最后别忘记释放

完整代码:

如果觉得博主写的不错,可以加技术交流群吖:

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/147516.html原文链接:https://javaforall.cn

版权声明


相关文章:

  • 单元测试基本步骤2025-06-08 07:30:04
  • java虚拟机的概念2025-06-08 07:30:04
  • 我电脑出现reboot and select解决视频2025-06-08 07:30:04
  • c语言结构体数组怎么输入2025-06-08 07:30:04
  • ant design vue 国际化2025-06-08 07:30:04
  • 什么事桥接模式2025-06-08 07:30:04
  • 安装软件提示25032025-06-08 07:30:04
  • date_add用法2025-06-08 07:30:04
  • flowable入门教程2025-06-08 07:30:04
  • 运算符重载方法2025-06-08 07:30:04