全局变量、函数
1、static未修饰全局变量的时候,全局变量(函数)具有外部连接属性,同一工程下,其他源文件可以通过extern 连接到这个全局变量,如:
(1)static 未修饰,extern 未使用(展示的全局变量,函数同理)
(2)static 未修饰,extern 使用(展示的全局变量,函数同理)
2、当static修饰全局变量的时候,全局变量(函数)不再具有外部连接属性,而是变成了内部连接属性,同一工程下,其他源文件不可以通过extern 连接到这个全局变量,只能当前源文件才可以使用,如:
局部变量
1、static未修饰局部变量的时候,局部变量的生命周期为它的局部范围开始至局部范围结束,每次进入它的局部范围都需要创建,存储在栈区,局部范围结束销毁,归还地址,如:
2、static修饰局部变量的时候,局部变量的生命周期为它的局部范围开始至程序范围结束,它只会创建一次,存储在静态区,局部范围结束不会销毁,程序结束才会销毁,归还地址,如:
注:static修饰的变量可以改变