C C 的記憶體分配方式

2021-10-13 10:08:12 字數 278 閱讀 4200

1.從靜態儲存區域分配。內存在程式編譯的時候就已經分配好,分配的內存在整個程式執行期間都存在且不能發生變化。

2.在棧上分配。執行函式時,函式內部的區域性變數的記憶體單元都可以在棧上建立,函式執行時這些儲存單元會自動釋放。棧記憶體分配內置於處理器的指令集中,效率很高,但分配的記憶體有限。

在堆上分配(動態記憶體分配),程式在執行發的時候使用malloc或new申請記憶體空間,在執行結束時,使用free或delete釋放記憶體。記憶體的生存期由自己控制。

只做個人學習使用,如有錯誤,歡迎路過的大神批評指正。

c c 記憶體分配方式

資料段 資料段通常是指用來存放程式中已初始化的全域性變數和靜態變數的一塊記憶體區域。資料段屬於靜態記憶體分配,可以分為唯讀資料段和讀寫資料段。字串常量等,但一般都是放在唯讀資料段中 段 段通常是指用來存放程式執行 的一塊記憶體區域。這部分區域的大小在程式執行前就已經確定,並且記憶體區域通常屬於唯讀,...

C C 程式記憶體分配方式

1.記憶體分配方式 記憶體分配方式有三種 1 從靜態儲存區域分配。內存在程式編譯的時候就已經分配好,這塊內存在程式的整個執行期間都存在。例如全域性變數,static變數。2 在棧上建立。在執行函式時,函式內區域性變數的儲存單元都可以在棧上建立,函式執行結束時這些儲存單元自動被釋放。棧記憶體分配運算內...

C C 程式的記憶體分配方式

1.記憶體分配方式 記憶體分配方式有三種 1 從靜態儲存區域分配。內存在程式編譯的時候就已經分配好,這塊內存在程式的整個執行期間都存在。例如全域性變數,static變數。2 在棧上建立。在執行函式時,函式內區域性變數的儲存單元都可以在棧上建立,函式執行結束時這些儲存單元自動被釋放。棧記憶體分配運算內...