一道C语言的题?

11题 不懂答案为什么是a值传递不是不改变n的值吗
2025-03-23 09:17:28
推荐回答(1个)
回答1:

static是静态变量关键词;
n属于局部静态变量;
具有记忆性,就是会记录下上次函数调用后n的值;再次调用n不会重置为初始值,而是继承上一次函数调用结束后的值;
int fun()
{
static int n=1;
n++;
printf("%d",n);
}
main()
{
fun();//第一次调用输出2;n初值为1,n++为2
fun()//再次调用输出3;n初值为2,n++为3