C++内存分区
概述
1. C++程序在运行时可以将内存分为5大区:代码区、常量区、全局区、堆区、栈区
代码区
1. 代码区存放源程序的二进制代码,代码区的内容是只读的
常量区
1. 常量区中存放字符串常量等,常量区也是只读的
2. const修饰的全局变量存放在常量区
全局区
1. 全局区存放全局变量和static修饰的全局变量和静态变量
堆区
1. 堆区的内存由程序员负责分配和释放,同时堆区的生长方向是低地址向高地址方向
栈区
1. 栈区由编译器控制分配和释放,栈区的生长方向是从高地址到地址
2. const修饰的局部变量不是常量,不存储在常量区,而是存储在栈区
3. 实际测试发现栈区变量中的地址确实比堆区变量中地址很高,但是实际测试中发现栈的生长方向也是由低地址到高地址
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律