2013-11-20 140 views

回答

1

Yes,整個數組被推入堆棧。 查看此鏈接查看如何將變量分配到堆棧上的內存 https://stackoverflow.com/a/18479996/1814023

+0

所以如果我用100.000元素創建一個本地數組,這會導致堆棧溢出? – Sebi2020

+0

是的,它會。如果它大於堆棧大小 – Megharaj

+0

@NishithJainMR:堆棧​​和堆的大小由Windoze上的編譯器決定(即在編譯時)。 MSVC上的默認值爲1Mb。點雖然,它沒有在C標準中定義。 – cdarke

2

無論數據在哪裏,數組的存儲方式都是相同的。無論它們被聲明爲局部變量還是全局變量,或者在堆中動態分配都沒關係。唯一不同的是,其中被存儲。