C语言输出时给两个变量同时加括号,为什么输出是这样的

img

img

这个是逗号表达式,计算结果返回最后一个表达式的值。因为++在变量的后面,所有打印输出后才会加一。

y++先用y进行处理,这段代码结束后y才加1
++x,y++是逗号表达式,从左向右运算,表达式结果为最右侧表达式的结果,所以输出3 3

括号里面的是逗号表达式,逗号表达式的值由逗号后面表达式决定,y值是4,表达式的值是3