作者djshen (djshen)
看板EE_DSnP
标题[问题] HW3 stack
时间Mon Oct 24 21:58:00 2011
刚刚测试了一下
STL的stack最多好像只能放1020个
用老师写的跟我写的都是同样结果
如果设定max recursive depth小於1020
则结果是正确的
以下为测试方法
--
开一个档案叫do5
内容:
do do5
madd a 1
然後进到modCalc里输入:
mcalc> mvar a 0
mcalc> do do5
最後会停在:
...(略
mcalc>
mcalc> madd a a 1
a(1021) = 1020 + 1
mcalc>
mcalc>▌
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.248.9.78
※ 编辑: djshen 来自: 111.248.3.180 (10/24 22:03)
1F:推 ric2k1:哦,我 code 里面的 stack limit 其实是我自己设的,超过时 10/24 22:20
2F:→ ric2k1:就印出 error message. 不过系统对於 recursion depth 也是 10/24 22:21
3F:→ ric2k1:也是有限制的,没有控制一下程式是会 crash 掉的。 10/24 22:22
※ 编辑: djshen 来自: 111.248.3.180 (10/24 22:22)
4F:推 ric2k1:至於应该设多少,我想大家可以自行选一个安全的值就好, 10/24 22:22
5F:→ ric2k1:我们不会去测这种 exception case. 10/24 22:23
6F:→ djshen:了解 10/24 22:24
7F:推 wmin0:你可以再用一个do6去开do5 然後把讯息导到档案去 10/26 01:58
8F:→ wmin0:你会发现真正原因是open file达系统上限 而不是stack爆了!! 10/26 01:58
9F:→ djshen:我也想说stack应该不会那麽小@@ 10/26 02:51
10F:→ djshen:不过用do6开do5 do6也会存到stack里吧 10/26 02:53
11F:→ djshen:不过看来确实是系统的问题 10/26 02:57
12F:→ gamerred:open file可能是另一个stack吧 总是有人要先爆掉(ry 10/26 18:35