关键字
static
- static修饰局部变量:
static
修饰局部变量,会让局部变量变为静态变量,产生的变化:
(1)存储位置发生改变,之前肯定是存放在栈
里的,现在放在了静态存储区
中
(2)声明周期变长,声明周期与程序相同,不会随着函数的调用结束而被销毁
(3)局部静态变量的初始化语句只会被执行一次
- static修饰全局变量:
全局变量
本来就是存储在静态存储区
,且声明周期与程序相同,因此static修饰不会改变全局变量的存储位置和生命周期static
修饰全局变量限制了其链接性,由外部链接性转为内部连接性,即由可以跨源文件使用变为只能在本源文件中使用- 函数本身是全局变量,因此默认保存在静态存储区,同时连接性为外部,
static
修饰函数变量,效果和修饰全局变量是相同的
- static修饰类成员变量: