C++中变量生存期,作用域,存储位置总结
来源:互联网 发布:华为云计算部门 编辑:程序博客网 时间:2024/06/06 00:25
首先说明一下堆和栈,栈(英文名称是stack)是系统自动分配空间的。而堆(英文名称是heap)则是程序员根据需要自己申请的空间。
堆上的内存空间是程序运行时维护的,栈是在编译时就确定的。 所以,我们可以int* p=new int[n],而不能int a[n](n为变量)。
存储空间类型: 栈(stack): 自动分配和清除的变量.如:局部变量和函数参数等
堆(heap): new得出来的空间。
全局/静态存储区:存储全局变量和静态变量。
常量存储区:存储常量,不可以修改。
存储空间的排布由操作系统决定(依赖于操作系统怎么规定自己的可执行文件的格式)
类型
补充
作用域
存在期
初始化
外部定义(函数外面)
全局变量(外部变量)
为了后定义先使用:可用extern外部变量说明.
全局
全程
一次初始化
静态外部变量
文件
全程
外部数组
全局
全程
静态函数
文件
n/a
n/a
普通函数
全局
n/a
n/a
内部定义(函数里面)
静态局部数组
局部
全程
一次初始化
静态局部变量
在函数外只能赋一次值
局部
全程
一次初始化
普通局部变量(自动变量)
局部
局部
- C++中变量生存期,作用域,存储位置总结
- c89 中的变量生存期,作用域,存储位置总结
- C中变量的内存存储和生存期
- c中变量的存储区和生存期
- c中变量的存储区和生存期
- C语言中变量的存储方式和生存期
- C语言的变量的作用域和生存期
- C语言变量作用域、生存期及static问题
- C语言的变量的作用域和生存期
- C语言的变量的作用域和生存期
- 关于C变量作用域和生存期的常见问题
- C/C++的变量生存期和作用域
- C语言中变量的生存期及作用域介绍
- 函数中变量的生存期和作用域
- 变量的作用域及生存期
- 变量的生存期和作用域
- 变量的作用域和生存期
- 变量的作用域和生存期
- 当测试遇上开发
- webservice 查询时校验用户名及其IP
- Linux 设备的挂载与卸载相关操作
- Objective C 学习心得 (一):--Windows下搭建objective C开发环境
- 弹出层与embed及svg生成的图形遮盖问题
- C++中变量生存期,作用域,存储位置总结
- 随记
- 为什么测试人都喜欢自动化?
- 黑马程序员-基础知识学习总结
- unix 创建新的user
- 14.59 设置表格焦点 JTable.setFocusable
- frameset 空白,iframe 空白边的解决方法
- android app 内存使用
- XML3