C_learn/3_lesson/08_var_local_static/main.c

37 lines
786 B
C
Raw Normal View History

2023-06-04 03:09:34 +08:00
#include <stdio.h>
// 定义一个静态局部变量
// 在函数内部定义的使用static修饰的变量就是静态局部变量
void myfun()
{
// 如果普通局部变量不进行初始化,则默认是随机值
// 如果静态局部变量不进行初始化则默认是0
int a; // 普通局部变量
static int num; // 静态局部变量
printf("a = %d\n", a);
printf("num = %d\n", num);
}
void myfun1()
{
// 静态局部变量不会随着当前函数执行结束而释放空间,下次使用的还是之前的空间
// 静态局部变量只会初始化一次
static int num = 100;
num++;
printf("num = %d\n", num);
}
int main(int argc, char *argv[])
{
myfun();
myfun1();
myfun1();
myfun1();
return 0;
}