打印

怎样才能有效地控制堆栈溢出

[复制链接]
2107|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
dalong168|  楼主 | 2011-2-18 08:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我用得是keil  MDK3.4 芯片是STM32F103ZET6,可是最近老出些莫名奇妙的错误,有人说是堆栈溢出,在程序中怎样编写才能有效地避免堆栈溢出
沙发
hgjinwei| | 2011-2-18 15:45 | 只看该作者
一、局部变量不要使用太多,尤其是局部大数组,最是杀堆栈的;
二、函数调用纵深不要太大;
三、尽量给堆栈留有余地;

使用特权

评论回复
板凳
dalong168|  楼主 | 2011-2-18 16:09 | 只看该作者
谢谢楼上,以后在这方面我会注意的,谁还有别的意见

使用特权

评论回复
地板
airwill| | 2011-2-18 16:38 | 只看该作者
cortex M3 有个内存保护和异常功能.
利用它可以捕捉堆栈溢出的情况, 如果要求很高, 应该可以写出故障恢复的程序来.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

57

主题

181

帖子

2

粉丝