靜態分配,區域變數分配,且一旦分配好,其記憶體大小就固定下來不能改變,在編譯和鏈接的階段就會分配好,
動態分配,就是指在程式執行的程序中動態地分配或者回收存盤空間的分配記憶體的方法,動態記憶體分配是由系統根據程式的需要即時分配,且分配的大小就是程式要求的大小,
動態記憶體分配是哪些資料?
1.變長陣列,
2.宣告的指標指向一個記憶體,用malloc等記憶體分配函式申請,
記憶體的靜態分配和動態分配的區別主要是兩個:
一是時間不同,靜態分配發生在程式編譯和連接的時候,動態分配則發生在程式調入和執行的時候,
二是空間不同,堆都是動態分配的,沒有靜態分配的堆,
堆疊有2種分配方式:靜態分配和動態分配,靜態分配是編譯器完成的,比如區域變數的分配,動態分配由函式malloc進行分配,不過堆疊的動態分配和堆不同,他的動態分配是由編譯器進行釋放,無需我們手工實作,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/65000.html
標籤:C
下一篇:C語言入門-全域變數
