请问单片机程序在运行过程中会RAM溢出吗?

2020-02-09 09:34发布

如题,编译器编译时可以统计出ROM和RAM使用情况,ROM可以理解,但RAM使用情况是动态的,这个统计是怎么出来的?如果编译通过了,运行过程中如果有复杂的运算,会不会有ram不够用溢出的情况发生?哪位大哥知道说下?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
12条回答
zbcfscc
1楼-- · 2020-02-09 11:14
编译通过时候的RAM应该只是统计全局变量这类东西的
logics
2楼-- · 2020-02-09 16:43
指针越界了就有可能
zbcfscc
3楼-- · 2020-02-09 21:53

t为全局变量时编译后显示占用RAM


把t改为局部变量,编译后不显示占用RAM
luoyiming1984
4楼-- · 2020-02-10 00:16
回复【3楼】zbcfscc

t为全局变量时编译后显示占用ram


把t改为局部变量,编译后不显示占用ram

-----------------------------------------------------------------------

这么说,编译不统计局部变量?那正常运行时,如果产生大量局部变量,就有可能ram溢出了?
谢谢这位!
wuha
5楼-- · 2020-02-10 03:31
 精彩回答 2  元偷偷看……
cfqxdgr
6楼-- · 2020-02-10 05:10
我是这么理解的。
见下图,4000个long double,也就是4000*8Byte = 32000Bytes ≈ 32KB,早超16k极限了。