1,内存分布概述
1,1内存的组成
在c/c++中,程序的内存分布大致可以分布大致可以分为以下几个部分:
- 代码区:存放程序的可执行代码。
- 数据区:
- 全局/静态变量(数据段)区:存放全局变量和静态变量。
- 常量区(代码段):存放常量数据。
- 堆区:用于动态分配内存。
- 栈区:用于存放局部变量和函数参数。
- 《图解C++函数栈:从创建到销毁,一看就懂的完整指南》-优快云博客
1,2内存分配方式
主要有两种:
- 静态内存分配:在编译时分配内存,生命周期从程序开始到结束🔚。
- 动态内存分布:在运行时分配内存,可以手动控制,生命周期由程序员管理。
2,内存管理
2,1静态内存分配
在静态内存分配中变量的大小和数量在编译时就已确定。这类内存分配的优点是简单、效率高,但缺点是灵活性差。<