菜鸟日常工作中的记录,cjson结构内存中的释放问题

cjson结构在内存中的释放

  **注:**以下只代表个人观点,不一定完全正确。
  **注:**以下内容为通过程序确定,但不排除会与其他文章或者记录雷同,如有侵权,请及时联系删除
          (邮箱:1101919300@qq.com)

1、在cjson中释放内存时,只需要释放父节点就可以,不需要专门管理子节点,子节点会随着父节点的释放一并释放掉,
**细节:**对于子节点,最好的做法是在程序处理完成数据后,判断一下每个节点是不是NULL,避免程序在创建父节点失败后程序返回,子节点还没有添加到父节点,那么后面也就不会再被释放释放,所以在数据处理后,使用if语句对子节点 是不是 == NULL ,不是NULL就重新释放一下,避免内存泄漏)。
2、cjson中的string类型数据在写入时是内存拷贝,并不是内存指向,cjson中占用的内存,会在删除父节点的时候一并被释放掉。
2、字符串格式化函数调用后返回的字串内存,需要专门调用free函数释放掉

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值