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

來源:生活大全幫 1.08W

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

使用C語言編程,實際上使用的內存只有一種虛擬內存。根據功能的不同在C語言中又將虛擬內存為分三類:棧區、堆區、靜態數據區,無論單一變量還是數組,其內存分配都是如此;

1、棧區:一般每一個函數對應一個棧區,在編譯原理中稱為棧幀;

2、靜態數據區:這實際上對應於生成的可執行文件的data區段,因為這個區段在生成的可執行文件中,因此是“靜態的”;

3、堆區:堆區是最複雜的,有操作系統負責堆管理,但是當用C語言編譯器生成一個可執行文件並且運行時,它會默認建立一些堆。

熱門標籤