#include <stdio.h>
int a=5;
int func(int d)
{
int b=5;
static int c=5;
a--; b--; --c; --d;
return a+b+c+d;
}
main()
{
int k, a=4;
for (k=0; k<3; k++)
printf("%d,", func(a--));
}
程序执行后的输出结果是()
全局变量,顾名思义,整个程序运行期间一直有效
为什么?那要看静态局部变量的解释了:
静态局部变量使用static修饰符定义,即使在声明时未赋初值,编译器也会把它初始化为0。
且静态局部变量存储于进程的全局数据区,即使函数返回,它的值也会保持不变。
希望对题主有所帮助!可以的话,帮忙点个采纳!