在使用JSON过程中遇到的一个空间释放问题

在对完成的模块进行空间访问检查中发现了这个问题,这刚开始接触JSON的使用,也不知道他的内部实现,因此该问题找了好久,终于发现是每个节点创建都会自动开辟空间,因此造成空间未成功释放的错误。

JSON未成功替换节点空间释放问题

cJSON_ReplaceItemInObject(ties,"time", CJSON_CreateString(curtime));

在上述节点替换函数中,若ties节点内没有time节点,则会替换失败,新创建的CJSON_CreateString(curtime)节点不会加入到大节点上,因此递归释放根节点时,新创建的该节点不会被释放。

因此未成功挂载到根上的节点需要单独释放空间。

大家在项目中一定要养成空间随开随关的习惯啊

相关推荐
傻乐u兔几秒前
C语言初阶————结构体
c语言·开发语言
小杜今天学AI了吗2 分钟前
如何配置 linux 系统的conda 环境
linux·运维·conda
逑之4 分钟前
C语言笔记2:C语言数据类型和变量
c语言·开发语言·笔记
oMcLin5 分钟前
如何在Ubuntu 22.04 LTS上通过配置ZFS存储池,提升高吞吐量数据库的读写性能与可靠性?
linux·数据库·ubuntu
这就是佬们吗5 分钟前
告别 Node.js 版本冲突:NVM 安装与使用全攻略
java·linux·前端·windows·node.js·mac·web
christine-rr6 分钟前
linux常用命令(9)——查看系统与硬件信息
linux·运维·服务器·网络·后端
阿豪学编程15 分钟前
【Linux】线程同步和线程互斥
linux·开发语言
oMcLin20 分钟前
如何在CentOS Stream 9上通过配置Hyper‑V虚拟化实现高效的资源隔离与虚拟机管理?
linux·运维·centos
liuyunshengsir21 分钟前
Elasticsearch 高级查询must 多个条件同时满足
linux·服务器·elasticsearch
草莓熊Lotso21 分钟前
Linux系统进程调度优化:优先级策略与切换机制深度实践
linux·运维·服务器·c++·人工智能·经验分享·其他