一、介绍
1、static 存储类指示编译器在程序的生命周期内保持局部变量的存在,而不需要在每次它进入和离开作用域时进行创建和销毁。因此,使用 static 修饰局部变量可以在函数调用之间保持局部变量的值。static 修饰符也可以应用于全局变量。当 static 修饰全局变量时,会使变量的作用域限制在声明它的文件内。static 是全局变量的默认存储类
二、代码验证
1、static函数和全局变量作用域是本文件
#include <stdio.h>
static int a = 5;
int fun(void);
int main(int argc, char **argv)
{
printf("result is: %d\n", fun());
printf("result is: %d\n", fun());
return 0;
}
int fun(void)
{
static int b = 5;
b += a;
return b;
}
参考