C++:有关变量的知识概括

注意变量名与变量值的概念

注意静态和动态的区别,局部和全局的区别。

标识符:

用来标识变量,符号常量,函数,数组,类型等实体名字的有效字符序列号称为标识符。标识符=名字

变量名规则:

(标识符)只能由字母,数字,下划线3种字符来组成,且第一个字符必须为字母或者下划线。

定义变量:

数据类型 变量名;

常变量:

常变量又叫做只读变量。

在定义变量时,如果加上const,则变量的值在程序运行期间不能被改变。

定义常变量时必须同时对他初始化。

常变量不能被赋值。即不能出现在等号嘴边。

const a=3;

局部变量:

在一个函数内部定义的变量是内部变量。

有效范围为本函数内部。

全局变量:

在函数之外定义的变量是全局变始量。

有效范围为从定义变量的位置开到本源文件结束。

变量的存储类别(存储期):(存储期指变量在内存中的存在周期)

1.静态存储期

2.动态存储期

静态存储方式:在程序运行期间,系统对变量分配固定的存储空间

动态存储方式:在程序运行期间,系统对变量动态的分配内存空间

供用户使用的存储空间的情况:

1.程序区

2.静态存储区:

存放全局变量,静态局部变量。

程序开始执行分配存储单元,程序执行过程中占据固定的存储单元,程序执行完毕释放。

3.动态存储区:

存放自动变量/(动态局部变量)/(函数形参,函数中定义的变量),函数调用时的现场保护和返回地址。

函数调用时分配动态存储空间,调用结束时释放。

在程序执行过程中,这种分配和释放是动态的。

变量属性除了数据类型外,还有存储类别:

自动的(auto)

静态的(static)

寄存器的(register)

外部的(extern)

自动变量(动态局部变量):

自动变量用关键字auto作存储类别说明。

动态地分配存储空间。

函数中的局部变量,函数的形参和在函数中定义的变量属于自动变量。

调用结束时自动释放。

在函数体中,以下两种写法相同:

auto int a=1;

int a=1;

静态局部变量:

是一种特殊的自动变量。

在函数调用结束后,占用的存储单元不释放,在下次调用该函数时,仍保留上一次函数调用结束时的值。而不是初始值。

用static声明为静态局部变量。

用extern声明外部变量:(全局变量)

如果在定义点之前的函数想要引用该全局变量,则应该在引用之前用关键字extern对该变量作外部变量(全局变量)声明,表示该变量是一个将要在下面定义的全局变量。

不用此方法,则要在第一行定义。

使用此方法,则可以在任意一行定义全局变量,并且可以在另一个源程序文件中调用变量。

静态外部变量:

用static声明全局变量后,则只能在本文件中被引用,即使另一个文件使用extern的形式也无法调用此文件中static声明的变量。














  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值