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

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

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

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

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

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

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

相关推荐
刚入门的大一新生26 分钟前
Linux-进程间通信1
linux·运维·服务器
张宇Joaquin1 小时前
Linux系统下磁盘扇区512n、512e和4kn的区别
linux·运维·数据库
道虽迩,不行不至1 小时前
数据库自动连库执行增量脚本-Linux
linux·数据库
GeW1 小时前
新质生产力发展路线图来了,Linux和数据库人该怎么接
linux·数据库
yunwei371 小时前
eBPF 示例:使用 CUPTI 构建 GPU 火焰图分析器
linux·后端·性能优化
etafort2 小时前
js格式化json树结构
json
张宇Joaquin2 小时前
自研SP600系列网卡驱动跟麒麟V10 SP3 2403配套关系
linux·运维·网络
himobrinehacken2 小时前
位运算揭秘:左右移与符号位陷阱
c语言·c++·算法·安全
艾iYYY2 小时前
【无标题】
linux·开发语言·网络·操作系统
mklpo1473 小时前
在 安卓手机 上通过termux运行 gentoo 和 宝塔面板。2026.10.19
linux·运维·服务器