c++——内存模型

c++中的变量分类:

https://blog.csdn.net/u013921430/article/details/79279114

https://wenku.baidu.com/view/747cf817b307e87101f696aa.html

 

1、变量属性:

  • 数据类型:整型,浮点型
  • 存储类别:静态,动态

2、变量分类:

  • 空间:作用域(局部,全局)
  • 时间:存储期(静态,动态)

3、内存空间划分:

  • 静态存储区(全局变量,加static声明的局部变量)
  • 动态存储区(函数形参,未加static声明的局部变量)

静态存储区中的变量,在程序执行过程中占据固定的存储单元

动态存储区中的变量,调用开始时分配存储空间,函数结束时释放空间

4、几种实际的变量定义:

动态局部变量:函数中的一般变量

静态局部变量:在函数中加static声明的变量

[静态]全局变量:加static声明的全局变量,只能用于本文件

注:

  1. 全局变量均为静态存储,加static只是限制了作用范围,也不存在动态全局变量的说法
  2. extern只用于声明已定义的全局变量,不能用于变量的定义
  3. 内部/外部变量是相对于函数来说的,相当于局部/全局变量
  4. 实际使用中的意义在于:函数调用时临时为变量分配存储单元(省内存);变量可被其他文件引用(省代码)

你可能感兴趣的:(c++——内存模型)