printf的一个疑问
printf函数的输出列表是从左到右,还是从右到左是有编译器决定的,那么如下代码int i=8 printf("%d %d %d %d %d %d ",++i,--i,i++,i--,-i++,-i--);若从右到左的顺序计算,我计算的输出结果应该是 8 7 7 8 -7 -8
为什么我测试的实际结果是 8 8 7 8 -7 -8 ???
然后我有用了如下代码测试
int i=8; printf("%d %d \n",++i,--i); int j=8; printf("%d %d \n",++j,j);输出结果是 8 8
9 9
这到底是什么回事,按照第二行的结果,应该是先执行的++j啊,可如果先执行前者,那么第一行的结果不应该是9 8才对吗???
这到底是什么回事? 望高手指导!