问答详情
源自:5-10 局部与全局

求解为什么将int x=10换了位置就得到不同答案

   if(x>0)

    {

       int x = 100;

        x /= 2;

        printf("if语句内, x=%d\n", x);       

    }

    printf("main方法内, x=%d\n", x);

    int x = 10;

    fn1();

    return 0;

}


提问者:qq_放声就去笑_1 2018-02-28 12:44

个回答

  • 慕圣2396141
    2018-12-05 18:33:52

    东东

  • 慕哥8464401
    2018-05-09 18:00:29

    c语言运行基本规则自左而右,自上而下。后面的int x=10已经不能影响上面的结果。。个人理解。。

  • 慕慕5279319
    2018-03-01 13:24:49

    int x=100应该在if之前吧

  • qq_放声就去笑_1
    2018-02-28 12:44:24

    运行成功,输出错误

    if语句内, x=50
    main方法内, x=77
    fn1(): x=77