c 的5種儲存區域

2021-08-19 20:09:41 字數 433 閱讀 5945

一、棧區(先進後出)

棧區存放的都是區域性變數,其範圍過了之後系統會自動**。

二、堆區

這裡的記憶體是由程式設計師自己管理的,例如:申請記憶體、釋放記憶體

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暫存...