看板 EE_DSnP 關於我們 聯絡資訊
剛剛測試了一下 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)
ric2k1:哦,我 code 裡面的 stack limit 其實是我自己設的,超過時 10/24 22:20
ric2k1:就印出 error message. 不過系統對於 recursion depth 也是 10/24 22:21
ric2k1:也是有限制的,沒有控制一下程式是會 crash 掉的。 10/24 22:22
※ 編輯: djshen 來自: 111.248.3.180 (10/24 22:22)
ric2k1:至於應該設多少,我想大家可以自行選一個安全的值就好, 10/24 22:22
ric2k1:我們不會去測這種 exception case. 10/24 22:23
djshen:了解 10/24 22:24
wmin0:你可以再用一個do6去開do5 然後把訊息導到檔案去 10/26 01:58
wmin0:你會發現真正原因是open file達系統上限 而不是stack爆了!! 10/26 01:58
djshen:我也想說stack應該不會那麼小@@ 10/26 02:51
djshen:不過用do6開do5 do6也會存到stack裡吧 10/26 02:53
djshen:不過看來確實是系統的問題 10/26 02:57
gamerred:open file可能是另一個stack吧 總是有人要先爆掉(ry 10/26 18:35