在使用cjson时发现了一些问题,最多的就是内存泄漏和内存的释放,在使用cJSON_Print时记得到先获取返回的字符串指针,然后再printf
,最后free掉指针,不然下一次打印会出现乱码,还有使用完记得cJSON_Delete掉cjson对象
str11_json = cJSON_Parse((const char*)p);
if (!str11_json)
{
printf("JSON err:%s\r\n", cJSON_GetErrorPtr());
}
else
{
char*txt = cJSON_Print(str11_json) ;
printf("JSON true:\r\n%s\r\n", txt);
free(txt);
cJSON_Delete(str11_json);//释放内存
}
在做完这些事发现还是不能正常打印就把堆写的大小调大点
```c
; <h> Heap Configuration
; <o> Heap Size (in Bytes) <0x0-0xFFFFFFFF:8>
; </h>
Heap_Size EQU 0x00001000