一、引言
大家好,我是小天,今天想给大家讲一下c/c++的内存模型,对于c/c++的内存管理部分。这就和为什么每次写程序的时候都要写#include
二、程序的内存模型分为哪几个区及概念
1.代码区
由系统直接管理,只读,存放二进制的代码。
2.静态区
存放局部变量,局部常量。
3.全局区
存放全局变量,静态变量,字符串常量,以及全局常量(由const修饰)。
4.栈区
由编译器自动分配空间
5.堆区
由程序员自动开辟空间,若未释放,则操作系统进行自动回收。
c++自动开辟的方式是用指针new一个空间,之后删除,而c语言用malloc开辟空间,用free释放两者都可以在堆区开辟空间。
如图:
使用new来开辟空间
使用malloc来开辟



