yongc语言编写单片机程序,出现了堆栈溢出情况,怎么解决?堆栈指针怎么初始化?

 我来答
cdyzxy
2013-02-15 · TA获得超过2.1万个赞
知道大有可为答主
回答量:1.4万
采纳率:84%
帮助的人:3629万
展开全部
可以在连接命令文件中指定堆栈尺寸,并且用特定字符串初始化这些区域,比如初始化成"STACK";然后充分运行程序;用内存观察观察堆栈使用情况(“STACK”被冲掉的部分是使用过的栈区),大致可估算使用堆栈的最坏情况。
根据以上分析,可以设置最佳栈区尺寸,如果栈区使用过大,请优化程序:
-子程序中尽量不要开辟新的大尺寸变量;
-程序调用子程序尽量少使用传入的参数,使用全局变量;
-减少程序中switch语句和循环的嵌套。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式