今天我们来讲讲c++中的四种内存分区
分为两大类
1. 程序执行前
* 全局区
* 代码区
2. 程序执行后
* 栈区
* 堆区
- 全局区
存储全局变量 静态变量
static int a
其他常量(字符常量等)
特点在程序结束之后由系统进行是释放 理解为关闭编译执行窗口?
- 代码区
- 存放执行cpu指令的机械指令
- 共享且只可读
- 栈区
- 由函数自己生成的局部变量,在当前函数执行结束之后即被销毁
- 函数不可以返回局部变量的地址,因为其会被之前执行函数所销毁,返回的是一个随即地址!
- 堆区
由程序员手动分配
- 基本用法
int * a=new int(10); a的数值为10
若要删除,则delete a
int * arr = new int[10];创建一个数组
若要删除,则delete[] ar;
如果要xmind文件可以到我的github c++学习仓库中找到
仓库