C++关键点总结系列-2

变量及作用域

自动变量  auto修饰,auto可省略

函数中的形参函数中定义的变量复合语句中定义的变量,都是自动变量。

 

全局变量在函数外面定义的变量 

可被每个函数使用      作用域:程序级或文件级

存放在静态存储区

默认初始值为0,可专门初始化

 

局部变量 在函数内部定义的变量或函数参数

只能在函数内部使用     作用域:函数级或块级

存放在动态存储区,运行时分配空间,结束时释放空间

必须初始化

可与全局变量同名,此时全局变量在函数中不再起作用

 

静态局部变量   static+局部变量

    函数内部使用

静态存储区 一经定义不会再分配存储空间,也不会自动消失,同全局变量

初始值为0,同全局变量

 

寄存器变量  register+局部变量

为提高程序执行效率,可将局部变量的值存放到CPU的寄存器中。

 

外部变量  extern+全局变量

全局变量是在函数的外部定义的,其作用域从变量的定义处开始,到本程序结束终止

使用extern来声明全局变量,可以扩展全局变量的作用域至多个程序中。

 

静态外部变量(静态全局变量)  static+全局变量

外部变量只限于本文件引用,而不能被其他文件引用

优点:许多程序员分工协作开发项目时,为了避免使用了相同的全局变量而影响到程序的正确性,可以定义成静态全局变量。

 

 

内部函数(静态函数):

定义它的文件中可以被调用的函数,而在同一程序的其他文件中不可调用。static <类型说明> <函数名><形参表>

 

外部函数

是一种作用域在整个程序中的函数,包含组成该程序的若干个文件。格式为:

 [extern] <类型说明><函数名><形参表>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值