棧區
由編譯器自動編譯釋放,好比:程序員
//此時將存儲在常量區的字符串suica拷貝到棧區. char string[] = "suica";
堆區
堆區須要程序員手動分配,手動釋放.
在C語言中可以使用malloc進行分配:ui
//給指針p分配一個大小的內存空間 int* p = (int *) malloc (1);
靜態區
只初始化一次;若是初始化沒給值,默認爲0;只有程序退出才釋放.
將變量定義前加static則存儲在靜態區指針
static int a = 5;
常量區
存放常量字符串,程序結束後系統釋放.code
int a = 10;
代碼區
存放程序的二進制代碼內存