內存分區:數組
一、堆(malloc(C語言)或new(C++));code
二、棧(編譯器自動分配);內存
三、全局(靜態)存儲區:DATA(全局初始化區)和BSS(全局未初始化區)編譯器
四、文字常量區:編譯
五、程序代碼區:class
int k=1;//全局存儲區(DATA段) void main()//程序代碼區 { int i=1;//棧 static int m;// 全局存儲區(BSS段) char *n="hello"// n位於棧上,內容是地址, "hello"位於文字常量區,此時"hello"在內存中只有一份拷貝 char a[]="hello"// a位於棧上,是一個有6個元素的數組,並將"hello"拷貝到它所佔內存中,此時"hello"有兩份拷貝 char *j;//棧 j=(char*)malloc(2);// 堆區 }