c语言自增问题
小白求助,代码附上int x = 6;
printf("%d\n", x+ = x++, ++x);
输出:15
请问这个具体怎么处理的,怎么进行运算的,请教一下,实在是没有搞懂。
我觉得吧,++的运算符等级比+=运算符等级高,所以x+=x++即为x=x+(x++),x=6+7=13,至于后面++x,我觉得应该不可以这么写吧,在线等一个大佬{:5_109:} 逗号运算符、自增运算符
确实如楼上所说,+= 的优先级比++小
x = 6
先进行x++,x此时为7,有因为逗号运算符,结果为后面的,所以相当于x = x + x++;
x = 7 + 8;
最后友情提示,以后代码不要这么写!!! 巴巴鲁 发表于 2021-3-21 10:46
逗号运算符、自增运算符
确实如楼上所说,+= 的优先级比++小
x = 6
多谢回答
我想问一下
x = x + x++ 时
x = 7
但是x++不应该是先用7相加然后再x = x + 1 吗?
也就是① x = 7 + 7
② x = x + 1
页:
[1]