全局变量(文件作用域变量)
声明在函数体外的变量,全局变量的作用域,即具有文件作用域,
如果要在其他文件使用,则要加上关键字extern
声明后可以使用;
存放在静态存储区中;
生命周期为自动生存周期,即在作用域阶结束后内存将释放。
局部变量
声明定义在函数体内的变量。
static+全局变量
全局静态变量,改变了全局变量的作用域,
使其在声明他的文件外是不可见的,
其他文件
加extern就违法了,其他文件可以声明使用相同名字的变量,但这个就不是静态全局变量了;
但不改变他的存放位置;
生命周期为静态生存周期,即在程序执行期间将一直存在。
advantage:
1、不会被其他文件所访问,修改;
2、其他文件中可以声明使用相同名字的变量。
静态函数
在函数返回类型前加上关键字static,静态函数只能在声明他的文件中可见。