求解释?不明白

来源:5-11 变量存储类别

慕牧羊6158366

2018-03-23 15:44

#include<stdio.h>

void fn()

{

    static int x=0;

    x++;

    printf("%d\n",x);


}

int main()

{

    int i;

    for(i=0;i<10;i++)

    {

        fn();

    }

    return 0;

}

为什么这里输出的结果是1,2,3,4,5,6,7,8,9,10不是1,3,5,7,9啊?for语句里面有i++,fn()函数里面也有,不就应该是等于自增了两下吗?

写回答 关注

2回答

  • 慕粉4008573
    2018-05-28 22:26:35
    就算两个是x也不影响吧,都不是一个局部的东西。而且for循环里面也没写调用外部变量
  • 慕牧羊6158366
    2018-03-23 16:16:01

    我去,脑抽了,原来第一个是x++,第二个是i++,恍然大悟(笑哭~~)

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926021 学习 · 20793 问题

查看课程

相似问题