MERROR 发表于 2021-3-27 17:25:23

求助C+++自加自减问题

main()
{
        int i=10;
        printf("%d %d %d\n",++i,i,--i);
}

代码如上
用的DEV C++编译器,结果是10 10 10,不知道咋算出来TAT,求好心人讲解。

yuxijian2020 发表于 2021-3-27 17:25:24

断点调试一下可知(我用的vs2019):
   它先计算了 --i然后移动了i然后再++i
    最后才是打印到屏幕上

MERROR 发表于 2021-3-27 17:34:56

yuxijian2020 发表于 2021-3-27 17:30
断点调试一下可知(我用的vs2019):
   它先计算了 --i然后移动了i然后再++i
    最后才是打印到屏幕上

那请问为什么输出结果不是10 10 9?

yuxijian2020 发表于 2021-3-27 17:38:32

MERROR 发表于 2021-3-27 17:34
那请问为什么输出结果不是10 10 9?

不是计算一次打印一次而是所有计算完成之后再打印

MERROR 发表于 2021-3-27 17:41:51

yuxijian2020 发表于 2021-3-27 17:38
不是计算一次打印一次而是所有计算完成之后再打印

了解了

weijun_zhang 发表于 2021-3-27 21:30:24

yuxijian2020 发表于 2021-3-27 17:25
断点调试一下可知(我用的vs2019):
   它先计算了 --i然后移动了i然后再++i
    最后才是打印到屏幕上

请问下大神,这个分步调试,用DEV C++该如何弄出来呢?多谢

yuxijian2020 发表于 2021-3-27 21:44:46

weijun_zhang 发表于 2021-3-27 21:30
请问下大神,这个分步调试,用DEV C++该如何弄出来呢?多谢

DEV C++我没用过,你可以在调试 - 窗口 里面找找 反汇编窗口
页: [1]
查看完整版本: 求助C+++自加自减问题