程序的内存模型
内存分区模型为4个区:
-
代码区:存放函数的二进制代码,由操作系统进行管理,存放CPU执行的机器指令,代码区是共享的:共享的目的是对于频繁被执行的程序,只需要在内存中有一份代码即可
代码区是只读的:防止程序意外地修改它的指令 -
全局区:存放全局变量和静态变量及常量,常量包括字符串常量和const修饰的常量
-
栈区:由编译器自动分配释放,存放函数的**(形)参数值**,局部变量等
-
堆区:由程序员分配和释放,弱程序员不释放,程序结束由操作系统回收,使用**new()**在堆区开辟内存,int * arr =new [n]; delete [] arr;