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

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

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

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

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

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

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

相关推荐
deli00700722 分钟前
JSON 树形查看器:粘贴即解析,折叠展开一目了然
前端·数据库·json·ai编程
M78佐菲36 分钟前
Linux学习笔记:进程
linux·笔记·学习·算法
zbyyd2 小时前
Linux 进程管理详解:从概念到实战
linux·运维·服务器
薛定猫AI3 小时前
OpenAI Codex本地完整配置教程|(Windows/Mac/Linux全平台,修复鉴权报错)
linux·windows·macos
lv__pf3 小时前
ajax的使用、json、jquery
ajax·json·jquery
躺不平的理查德4 小时前
OpenSSL 的异步 TLS 1.3 加密
linux·运维·服务器
tedcloud1234 小时前
Awesome DSH Plugin 怎么用?给 DeepSeek Harness 搭建自己的插件生态
大数据·linux·服务器·人工智能·音视频
qq_589666054 小时前
C语言、C++与C#的区别详解
c语言·c++·c#
钓鱼的小小猫4 小时前
从零拿捏Linux(一) ---- 命令(视频秒解)
linux·linux命令