目录
static的用法
一:
我们写个代码和它的运行结果
但是当我们在建立z这个变量钱加上static
会使得z再下次循环中不会重新被赋值
二:当我们想使用外部文件的变量或者函数,我们可以使用extern关键字来申明一下
但是当我们不想这个文件被其他的文件使用时,我们可以加上static
简单介绍一下静态区,堆区和栈区
静态区:用来储存静态变量和全局变量
堆区:程序员自己用来使用和释放内存
栈区:用来存放局部变量和函数的参数值
关键字static的作用
一:
static可以使一个局部变量从变成一个静态变量,把这个变量从栈区移到静态区来存放,使得这个变量的生命周期变大。如static用法一中,它既不会随着这个自定义函数生命周期结束而结束,也不会在下一次进入这个函数的时候被重新赋值。
二:
全局变量具有一个外部链接属性,而当我们创建这个全局变量时加上关键字static,那么这个全局变量就具有了内部链接属性,从而使得这个变量只能在自己的源文件使用,简单的理解就是作用域变小了
我们也可以这样理解:
楼梯:全局变量具有的外部链接属性
楼层:源文件
楼层中可以交换使用的物品:变量存放的东西
当楼梯断了,本来可以在个个楼层使用的物品就只能在自己的楼层使用