励精图治的22℃
励精图治的22℃
C语言
程序的内存分区模型
去牛客网
程序的内存分区模型
来自
【C/C++基础】
260 浏览
0 回复
2022-01-05
励精图治的22℃
+关注
文章目录
执行过程:
内存分区:
运行前:
运行后:
执行过程:
预处理:宏定义展开、头文件展开、条件编译、这里不会检查语法
编译:检查语法、将预处理后文件编译生成汇编文件
汇编:将汇编文件生成目标文件(二进制文件)
链接:将目标文件链接为可执行程序
内存分区:
运行前:
代码区:
共享
只读
数据区:
data已初始化的全局变量、静态变量、常量
bss未初始化的全局变量、静态变量、常量
运行后:
栈区
属于先进后出的数据结构
由编译器管理数据开辟和释放
变量的生命周期在该函数结束后自动释放掉
堆区
容量远远大于栈
没有先进后出这样的数据结构
由程序员管理开辟(malloc)和管理释放(free)
记住手动开辟的要手动释放
举报
收藏
赞
相关专栏
C/C++基础
162篇文章
2订阅
+订阅
评论加载中...