cjson结构在内存中的释放
**注:**以下只代表个人观点,不一定完全正确。
**注:**以下内容为通过程序确定,但不排除会与其他文章或者记录雷同,如有侵权,请及时联系删除
(邮箱:1101919300@qq.com)
1、在cjson中释放内存时,只需要释放父节点就可以,不需要专门管理子节点,子节点会随着父节点的释放一并释放掉,
**细节:**对于子节点,最好的做法是在程序处理完成数据后,判断一下每个节点是不是NULL,避免程序在创建父节点失败后程序返回,子节点还没有添加到父节点,那么后面也就不会再被释放释放,所以在数据处理后,使用if语句对子节点 是不是 == NULL ,不是NULL就重新释放一下,避免内存泄漏)。
2、cjson中的string类型数据在写入时是内存拷贝,并不是内存指向,cjson中占用的内存,会在删除父节点的时候一并被释放掉。
2、字符串格式化函数调用后返回的字串内存,需要专门调用free函数释放掉