C/C++ 基础(持续更新中)

 

在C++中,内存被分为五个块: 堆,栈,自由存储区,全局/静态变量区和常量存储区.

栈: 是编译器在需要的时候分配,在不需要的时候自动清除的一块区域.通常用来存储局部变量,形式参数.

堆: 一般是由new分配的区域,编译器不会去管这块存储区域,主要是由程序员控制,一个new对应一个delete.如果用new分配了一块内存而没有进行释放的话,只有等到进程结束的时候被系统自动收回.

自由存储区:  由malloc分配的区域,和堆十分相似,不同的地方是它的释放用free.

全局/静态变量区: 用来存储全局变量和静态变量.

常量存储区: 这是一块很特殊的区域,不允许程序员修改里边的量(如果你非要改,那也是可以的,非法手段是有很多的,自己去探索吧)

 

 

你可能感兴趣的:(delete,存储,编译器)