例8.17.txt
来自「C语言程序设计的第二版源码」· 文本 代码 · 共 19 行
TXT
19 行
例8.17考察静态局部变量的值。
f(int a)
{auto b=0;
static c=3;
b=b+1;
c=c+1;
return(a+b+c);
}
main()
{int a=2,i;
for(i=0;i<3;i++)
printf("%d ",f(a));
}
运行结果为:
789
在第1次调用f函数时,b的初值为0,c的初值为3,第1次调用结束时,b=1,c=4,a+b+c=7。由于c是静态局部变量,在函数调用结束后,它并不释放,仍保留c=4。在第2次调用f函数时,b的初值为0,而c的初值为4(上次调用结束时的值)。
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?