有人说嵌入式编程由于内存不够,且不易控制,一般不用malloc来分配内存,而尽量用数组,有道理吗?
如题
[解决办法]
在低端MCU上确实没见过动态分配内存的
[解决办法]
MISRA (The Motor Industry Software Reliability Association 汽车工业软件可靠性联会)C语言编程规范:
Rule 118. 禁止使用动态堆分配(也就是不得使用malloc, calloc和realloc)。
[解决办法]
动态内存分配会导致内存碎片,内存碎片会导致系统崩溃。
[解决办法]
不一定,不能频繁使用malloc,一般用内存池或在初始化的时候用malloc分配好
[解决办法]
开发效率和执行效率总是相互矛盾。