c語言數組在內存中是怎么分配的


使用C語言編程,實際上使用的內存只有一種虛擬內存 。根據功能的不同在C語言中又將虛擬內存為分三類:棧區、堆區、靜態數據區,無論單一變量還是數組,其內存分配都是如此 。
1、棧區:一般每一個函數對應一個棧區,在編譯原理中稱為棧幀 。
2、靜態數據區:這實際上對應于生成的可執行文件的data區段,因為這個區段在生成的可執行文件中,因此是“靜態的” 。
3、堆區:堆區是最復雜的,有操作系統負責堆管理,但是當用C語言編譯器生成一個可執行文件并且運行時,它會默認建立一些堆 。
【c語言數組在內存中是怎么分配的】

    推薦閱讀