83.static关键字
目录
一.static关键字
1.1 修饰局部变量
1.2 修饰全局变量
1.3 修饰函数
二.视频教程
一.static关键字
static关键字可以修饰局部变量,全局变量和函数。
1.1 修饰局部变量
使用static关键字修饰局部变量,只在第一次进入作用域的时候初始化 。函数退出后,这些变量的值仍保持。直到程序终止。静态局部变量的生命周期是从定义起到程序结束。
#include <stdio.h>
#include <stdlib.h>
int funca(void){
static int a = 0;
a++;
return a;
}
int funcb(void){
int b = 0;
b++;
return b;
}
int main(void)
{
int value_a;
int value_b;
value_a = funca();
printf("a = %d\n",value_a);
value_a = funca();
printf("a = %d\n",value_a);
value_b = funcb();
printf("---------------\n");
printf("b = %d\n",value_b);
value_b = funcb();
printf("b = %d\n",value_b);
return 0;
}
运行结果:
1.2 修饰全局变量
静态全局变量仅当前文件可见,其他文件不可访问,其他文件可以定义与其同名的变量。
1.3 修饰函数
使用static修饰的静态函数只能在声明所在的文件内部调用,无法被其他文件调用。
二.视频教程
83.static关键字_哔哩哔哩_bilibili