C++内存分区

C++中的内存分区只要有以下几种:

(1)栈存储区:主要存储像局部变量、函数参数这些值,栈内存由编译器在需要时分配,使用完时自动释放。

                           栈内存的分配运算内置在指令集中,因此分配效率高,但是内存容量却有限。

                           栈内存主要存储定义在函数内的非static对象。

(2)堆存储区:又称为动态内存存储区。这里要用new申请内存块,需要用delete释放。

                           如果程序员不释放申请到的内存,程序运行结束后操作系统会自动回收。

                           动态内存生存期灵活,但是伴随着申请释放内存也容易出现问题。

(3)自由存储区:和堆存储区类似,只是这里内存是用malloc申请,由free释放的。

(4)全局和静态存储区:存储程序中全局变量和静态变量的区域。 

                           此处的内存在程序编译时已经分配好,它存在于程序整个生命周期。

(5)常量存储区:用来存储程序中常量的内存区域。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值