首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

有人说嵌入式编程由于内存不够,且不易控制,一般不用malloc来分配内存,而尽量用数组,有道理吗?解决思路

2012-04-20 
有人说嵌入式编程由于内存不够,且不易控制,一般不用malloc来分配内存,而尽量用数组,有道理吗?如题[解决办

有人说嵌入式编程由于内存不够,且不易控制,一般不用malloc来分配内存,而尽量用数组,有道理吗?
如题

[解决办法]
在低端MCU上确实没见过动态分配内存的
[解决办法]
MISRA (The Motor Industry Software Reliability Association 汽车工业软件可靠性联会)C语言编程规范:
Rule 118. 禁止使用动态堆分配(也就是不得使用malloc, calloc和realloc)。

[解决办法]
动态内存分配会导致内存碎片,内存碎片会导致系统崩溃。
[解决办法]
不一定,不能频繁使用malloc,一般用内存池或在初始化的时候用malloc分配好
[解决办法]
开发效率和执行效率总是相互矛盾。

热点排行