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

ARM编程中malloc的疑惑!解决思路

2012-03-08 
ARM编程中malloc的疑惑!在ARM的程序中使用了malloc的函数,在ARM的仿真调试工具下,没有问题。可是下载到实际

ARM编程中malloc的疑惑!
在ARM的程序中使用了malloc的函数,在ARM的仿真调试工具下,没有问题。
可是下载到实际的板子上运行时,却通不过。请高人指点!
顺便说一下该程序中没有使用操作系统。


[解决办法]
检查对应的 include 目录中有没有这个 malloc函数 ....

用的另外一种板子,
看了一下, malloc 是可用的。
但是其他很多标准C函数都不可用,
所以建议检查一下 ...

另外,
仿真可以通过,
应该没什么问题。

malloc申请的内存大小会不会超限了?
[解决办法]
malloc 在没有OS情况下需要自己实现
堆栈的控制都由自己来设置
否则会出错的
[解决办法]
使用数组有可能会栈溢出.

malloc是返回失败还是把板子搞死?
我觉得很大的可能性是malloc失败,分配不到你要的内存块.

你在仿真设置的时候有没有设置和实际硬件一样的memory map?
而且即使设置了,也可能由于其他调用,内存碎片增加而分配失败的,所以并不一定能百分百模拟内存情况.

[解决办法]
malloc应该是系统内的调用,板子上连os都没有不能分配空间。
这可能需要自己去配制板子上的flash或者ram的寄存器去实现malloc了。。。

热点排行