关于C语言中i++和++id的使用

2019-07-16 07:48发布

最近在温习C语言时用到了关于printf语句,其中里面的一段代码
“int i = 1;
  iprintf("%d,%d,%d ",i++,i,++i)”
输出结果为2,3,3.请问这是为什么?我看了好多关于这方面得帖子,讲到了关于这个函数是从右往左计算,但是还是不是很明白。请在座的各位大佬能够详细的为我 解答一下这个问题。谢谢
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
李生0201
1楼-- · 2019-07-16 12:59
是一个优先级的问题,你可以对调i++,i,++i,看看输出就知道了
Ansersion
2楼-- · 2019-07-16 17:02
根据不同的编译器和系统,结果可能是不一样的,咱不研究编译器这烧脑的东西,简单做个试验了解一下吧。
我在Mac book pro(High Sierra)用GCC编译运行,结果是1,2,3。
我在Ubuntu用GGG编译运行,结果是2,3,3。

一周热门 更多>