阿尼key 发表于 2021-1-14 20:25:08

++++

#include <stdio.h>
int main()
{
        int a,x=11;
        x=x++;
        a=x++;
        printf("%d\n",x);
        printf("%d\n",a);
}
运行结果x=12,a=11,为什么

#include <stdio.h>
int main()
{
        int a,x=11;
        x=x+++1;
        a=x++;
        printf("%d\n",x);
        printf("%d\n",a);
}
运行结果x=14,a=13,为什么

风过无痕1989 发表于 2021-1-14 21:07:06

#include <stdio.h>
int main()
{
        int a, x = 11;
        x = x++;            // 先运算,后自增,x = 12
        a = x++;            // 先运算,后自增,a = 12, x = 13
        printf("%d\n", x);
        printf("%d\n", a);
}

#include <stdio.h>
int main()
{
        int a, x = 11;
        x = x++ + 1;         // 先运算,后自增,x = 13
        a = x++;             // 先运算,后自增,a = 13, x = 14
        printf("%d\n", x);
        printf("%d\n", a);
}

WindyJane 发表于 2021-1-14 21:16:48

本帖最后由 WindyJane 于 2021-1-14 22:03 编辑

请看 代码后面的注解.
#include <stdio.h>
int main()
{
      int a,x=11;
      x=x++;//x=x,x=x+1; //x=11 a=? 因为未初始化,不懂得话就当0
      a=x++;//a=x,x=x+1; //a=11, x=12
      printf("%d\n",x);
      printf("%d\n",a);
}
运行结果x=12,a=11,为什么

#include <stdio.h>
int main()
{
      int a,x=11;
      x=x+++1;//x=x+1,x++;// x=12,x=13;
      a=x++;//a=x,x++;//a=13 ,x=14;
      printf("%d\n",x);
      printf("%d\n",a);
}
如果感觉回答比较满意,记得给个最佳答案,当做给我的肯定,谢谢~{:10_281:}

昨非 发表于 2021-1-14 21:32:56

风过无痕1989 发表于 2021-1-14 21:07


不对吧,
第一种情况下,我vs输出a=11不是12
第二种情况下,我vs输出x=13,a=12

风过无痕1989 发表于 2021-1-14 21:33:12

WindyJane 发表于 2021-1-14 21:16
请看 代码后面的注解.
#include
int main()


a 无须初始化!

风过无痕1989 发表于 2021-1-14 21:37:40

昨非 发表于 2021-1-14 21:32
不对吧,
第一种情况下,我vs输出a=11不是12
第二种情况下,我vs输出x=13,a=12

看我的运行

昨非 发表于 2021-1-14 21:40:29

本帖最后由 昨非 于 2021-1-14 21:43 编辑

风过无痕1989 发表于 2021-1-14 21:37
看我的运行

玄学?

风过无痕1989 发表于 2021-1-14 21:50:13

昨非 发表于 2021-1-14 21:40
玄学?

它是 x = x++,虽然是先运算,后自增,它运算完了,x = 11,然后自增,自增完了,x = 12, 来来回回都是 x,并没有赋给其他某个变量。若是运算完后将值赋给了其他的变量,那就是 11

WindyJane 发表于 2021-1-14 21:56:51

风过无痕1989 发表于 2021-1-14 21:33
a 无须初始化!

我只是说a,没有初始话,并没说需要初始化, 这个是个人习惯,有的时候人脑力逻辑跟不上的时候可以靠好的习惯避免,一些不必要的错误.
页: [1]
查看完整版本: ++++