各位专家大牛:
我使用C6678的芯片,用CCS裸机工程调用malloc函数分配内存,然后再用free函数释放内存,最终在重复malloc几次之后就会返回指针为空了,malloc的次数与.cmd文件中--heap分配的大小有关;
请教一下,malloc一定次数之后返回指针为空可能是跟什么有关?是free函数没有生效吗?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
各位专家大牛:
我使用C6678的芯片,用CCS裸机工程调用malloc函数分配内存,然后再用free函数释放内存,最终在重复malloc几次之后就会返回指针为空了,malloc的次数与.cmd文件中--heap分配的大小有关;
请教一下,malloc一定次数之后返回指针为空可能是跟什么有关?是free函数没有生效吗?
没明白什么意思,我预留的heap空间是分配完了?但是我free了啊,再malloc还会失败?是free这个没有起到释放内存的作用吗?
往哪个地址填数?我一开始的测试流程是复杂的,每次malloc之后都会填充数据,后来出问题之后是定位到malloc失败,所以写了上面的测试程序专门测试malloc,发现确实会有malloc失败的情形。
多次malloc这个应用是必需的,我应该怎么实现多个变量都用malloc?