c++内存分区模型
代码区:存放所有代码的二进制
全局区,存放全局变量,静态变量,常量
栈区,编译器自动分配与释放,存放函数参数值和局部变量,随函数结束而释放
堆区,有程序员进行分配与释放,或者函数结束时自动释放
不同区域用于存放那个不同的数据,有不同的生命周期
在程序编写完,编译后,生成exe文件,这时已经出现两个区域,代码区和全局区,代码区存放cpu执行的机器指令,自身是共享的和只读的,全局区存放全局变量,静态变量常量(字符串常量,全局常量)这些,存在于程序运行的所有过程,直到程序结束,栈区和堆区是在程序正式运行时才生成的。
静态变量:static 数据类型 变量名 = 变量值,存在全局区
字符串常量,不是string定义的变量,而是“”直接包围的常量,存在全局区
const 修饰的变量,如果修饰全局变量,存在全局区,如果修饰局部变量,不存在全局区
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
· Manus的开源复刻OpenManus初探