#include <stdio.h>
void increment()
{
static int x=0;
x+=1;
printf("%d",x);
}
int main ()
{
increment();
increment();
}
1
2
#include <stdio.h>
void increment()
{
static int x=0;
x+=1;
printf("%d\n",x);
}
int main ()
{
increment();
increment();
return 0;
}
运行结果:
12
运行结果:12
static变量保留函数调用后更新的数值
第一次调用increment()函数,x初始值为0,加一x的值为1,值保留
第二次调用increment()函数,x初始值为1,加一x的值为2。
两次函数调用中间没有分隔符,输出也没有分隔符,所以运行结果12。