2010-08-27 126 views
-1

stackoverflow如何影響變量?stackoverflow如何影響變量?

+0

請更具體。影響什麼變量?在什麼情況下?發生了什麼會導致上述堆棧溢出錯誤?什麼堆棧被溢出? – BoltClock 2010-08-27 11:06:20

+1

...並且,你的意思是緩衝區溢出? – 2010-08-27 11:08:27

+0

什麼??你可能會發現堆棧溢出是在這個論壇上的很多答案,但仍然是你的問題對我來說沒有多大意義... – rabidmachine9 2010-08-27 11:10:43

回答

2

堆棧溢出通常意味着您的應用程序將立即退出。因此,影響將是所有與流程相關的內存將被釋放,包括您的變量。

+0

儘管最常見的情況當然是完全失敗,然後退出,但在另一種情況下,這意味着您的應用程序可能被利用,從而使攻擊者有一種(或各種)機會進入您的機器或提升特權。在一個更不常見的情況下,它可能表現不好,因爲覆蓋的緩衝區不會影響任何堆棧幀,或幸運地(或不)它在受影響的區域寫入有效值。這可能會影響您的代碼流,通過在通常不會執行的某些條件下評估真實值,從而導致意外的代碼執行。 – jweyrich 2010-08-28 03:12:01

+0

@jweyrich:你似乎把堆棧溢出與緩衝區溢出混爲一談。 – 2010-08-28 03:42:41

+0

堆棧溢出可能是緩衝區溢出的一種形式,但是如果這裏的堆棧溢出意味着分配超過堆棧限制的內存,則可以處理它(例如:超過堆棧空間的遞歸函數)。應用程序不一定會在失敗時退出 – jweyrich 2010-08-28 04:43:08