为什么用到静态变量?
变量存储有两种方式:静态和动态;动态变量在程序执行时分配存储单元,当所在程序段结束时,自动将这些存储单元释放,静态变量存储在永久性的存储单元中,在下次执行该程序段时仍然使用原来的存储单元。
因此,静态变量的生存周期将一直延长到其所在的整个程序运行结束。
测试代码:
#include<stdio.h>
void sum();
void main()
{
int a=3;
static int b;
printf("a=%d,b=%d\n",a,b);
sum();
sum();
}
void sum()
{
int a=2;
static int b=10;
a+=10;
b+=20;
printf("a=%d,b=%d\n",a,b);
}