[轉錄][閒聊] stack和heap的差別

看板PLT (程式語言與理論)作者 (艾斯寇德)時間17年前 (2007/08/28 18:19), 編輯推噓4(406)
留言10則, 4人參與, 最新討論串1/3 (看更多)
※ [本文轉錄自 C_and_CPP 看板] 作者: mystea (mystea) 看板: C_and_CPP 標題: [閒聊] stack和heap的差別 時間: Tue Aug 28 18:11:11 2007 感覺起來, 這兩種memory都是用過以後可以回收再利用的. 差別好像是在於, stack每次要劃分多少都是先規劃好的, 而heap是可以隨著使用者的input在runtime決定劃分方法的. 但如果是這樣, 為什麼不乾脆就只有heap memory呢? 這樣子就不會 發生甚麼stack overflow的情形了. 程式在runtime執行code裡規劃好的 記憶體劃分應該不難才對呀? 謝謝. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 76.170.235.113 ※ 編輯: mystea 來自: 76.170.235.113 (08/28 18:12)

08/28 18:19,
轉PLT討論一下好了‧_‧/
08/28 18:19
-- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.127.209.65

08/28 18:41, , 1F
這跟電腦架構有關...大可自己做 call stack, 然後跑個
08/28 18:41, 1F

08/28 18:43, , 2F
無窮遞迴就把 memory 吃光 O_o 這樣不好吧...
08/28 18:43, 2F

08/28 19:48, , 3F
說的也是呢 =3= 迴圈裡面也是用到區域變數的
08/28 19:48, 3F

08/29 02:52, , 4F
能不能講解得詳細一點呢? 如果有用stack跑無窮遞迴就不會吃
08/29 02:52, 4F

08/29 02:54, , 5F
光記憶體了嗎?
08/29 02:54, 5F

08/29 08:20, , 6F
會回收掉
08/29 08:20, 6F

08/29 08:21, , 7F
stack碰到'}' 或者end區塊就會死掉了,heap可不會
08/29 08:21, 7F

08/29 08:49, , 8F
對話很有趣,但不是用stack比較不會被吃光記憶體;
08/29 08:49, 8F

08/29 10:05, , 9F
會先 stack overflow
08/29 10:05, 9F

08/29 11:30, , 10F
stack overflow會? 爆炸
08/29 11:30, 10F
文章代碼(AID): #16q_Qy2i (PLT)
文章代碼(AID): #16q_Qy2i (PLT)