看板 C_and_CPP 關於我們 聯絡資訊
小弟有一個問題 就是假設我寫一個 for(i=0 ; i < 100 ; i++){ int temp; ... } 在某function裡面 int temp ; 這行程式碼被執行了一百次 那temp 這個變數會被生100次出來在不同的記憶體位置嗎? 如果會的話compiler or OS 會幫忙先清掉原本的temp嗎? (否則會浪費99個int 的記憶體大小) 還是說只會被生一次出來呢? 如果是的話 之後每次看到int temp 會是怎麼樣的行為阿 謝謝大家.. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.244.131
Dannvix:視編譯器而定吧:P 不過一般都會在同位置/不會清原本的垃圾 04/30 12:45
Dannvix:local variable 擺在 run-time stack 裡 04/30 12:46
loveme00835:會有這種問題, 難怪會有人死都不把變數放區域, 或是硬 04/30 14:04
loveme00835:把他們擺在程式碼最前面 XD 04/30 14:05