程序的内存模型
c++在程序执行时,将内存分为4个区域
一、代码区 存放函数体的二进制代码,有操作系统管理
*存放cpu执行的机器指令
*代码区有共享区域
*代码区有只读区域
二、全局区 存放全局变量、静态变量和常量
*全局变量和静态变量在这里
*还包括常量区,字符串常量和其他常量(const)也在这里
*该区域的数据是有程序执行过后由操作系统释放
三、栈区 由编译器自动分配释放,存放函数的参数值、局部变量
*由编译器自动分配释放,存放函数的参数、局部变量
*注意:不要返回局部变量的地址,栈开辟的数据由编译器自动释放
四、堆区 由程序员分配和释放,若程序员不释放,程序结束时由操作系统回收
*由程序员分配释放,若程序员不释放,程序结束时由操作系统回收
*在c++中主要是用new在堆区中开辟内存
计算机小白记录学习过程,喜欢就点个推荐和关注吧O(∩_∩)O哈哈~

浙公网安备 33010602011771号