作者singlovesong (~"~)
看板C_and_CPP
標題[問題] multiple local variable declaration
時間Sat Apr 30 12:32:51 2011
小弟有一個問題
就是假設我寫一個
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