cJSON库使用的注意事项
- cJSON 按照json的数据格式使用了链表的数据结构所以在调用cJSON_CreateObject()和cJSON_Parse()接口后都需要调用cJSON_Delete()接口释放内存, 释放内存会从头节点遍历链表释放所有节点内存。
- 不能将同一个节点放入两个链表中,这样在释放内存时会重复释放导致崩溃,例如:将解析的某个节点直接挂到新创建的链表中,就会出现这种情况。
- 在调用cJSON_PrintUnformatted()和cJSON_Print()接口后要手动释放堆上申请的内存。