一、棧區(先進後出)
棧區存放的都是區域性變數,其範圍過了之後系統會自動**。
二、堆區
這裡的記憶體是由程式設計師自己管理的,例如:申請記憶體、釋放記憶體
malloc free new delete alloc destroy
若程式設計師不釋放,程式結束時可能由os**。
三、靜態區(全域性區)
靜態區儲存的是全域性變數和靜態變數(只初始化一次),在程式全部結束之後釋放。
四、常量區
程式在執行期間,值不能改變的區,可以改變指標的指向位址,從而改變值。
const char *n = "fffff";
五、**區
存放函式體的二進位制**
int k=1;
void main()
c 儲存區域
來自 在c 中,記憶體分成5個區,他們分別是堆 棧 自由儲存區 全域性 靜態儲存區和常量儲存區 棧,就是那些由編譯器在需要的時候分配,在不需要的時候自動清除的變數的儲存區。裡面的變數通常是區域性變數 函式引數等。堆,就是那些由new分配的記憶體塊,他們的釋放編譯器不去管,由我們的應用程式去控制,一般...
C語言儲存區域
一 c語言程式的儲存區域 由c語言 文字檔案 形成可執行程式 二進位制檔案 需要經過編譯 彙編 連線三個階段。編譯過程把c語言文字檔案生成匯程式設計序,彙編過程把匯程式設計序形成二進位制機器 連線過程則將各個原始檔生成的二進位制機器 檔案組合成乙個檔案。c語言編寫的程式經過編譯 連線後,將形成乙個統...
C語言5種儲存型別
1.自動變數 預設情況下,在 塊或函式的頭部定義的任意變數都屬於自動儲存類。自動儲存時期意味著程式在進入包含變數宣告的 塊時,變數開始存在。當程式離開這個 塊時,自動變數消失了。初始化,除非手動初始化,否則不會被自動初始化。2.暫存器變數 通常,變數儲存在計算機記憶體中。幸運的話可以儲存在cpu暫存...