內存的劃分

內存的劃分

棧-stack


棧中的內存由編譯器自動管理。
函數的形參、普通局部變量都存儲在棧中。

堆-heap


C語言中使用malloc函數、OC中使用alloc函數申請的都是堆中的內存。需要程序員手動動態的 申請和釋放。若程序員申請過後,沒有釋放,若程序正常結束,OS會回收這部分內存;也有可能導致程序無法正常結束。

靜態存儲區


全局變量、靜態變量都存儲在靜態區。內存分配發生在編譯階段。系統管理。

常量區


const類型,常量字符串存儲在此區域。由系統管理。

程序代碼區


程序的二進制代碼,如函數體。由系統管理。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章