pirntf函数中的表达式的结合顺序是由右向左,所以先算y++,再算x++,最后算x+y,因为只有一个%d,所以输出对应的x+y的值为5
标准C编译器的话,应该是3,x++、y++是在所在语句执行完后再+1的,
即使是printf("%d",x+y,++x,++y);结果也为3,因为执行顺序是从左至右,运算x+y时,xy还没自加
不知道你用的什么编译器,是哪种C
这可不一定是5,通常是3。请看:
vc++6.0运行结果是3
以前回答过这样一个帖子,有空的话去看下。
这个主要看编译器编译顺序的问题
你看下这个问题就明白了:http://zhidao.baidu.com/question/361882053.html?oldq=1