为什么这个式子得出来y=6????
void main()
{
int a=2,b=4,c=6,x,y;
y=(x=a+b),(b+c);
printf("%d,%d\n",y,x);
}
小甲鱼不是说y的值为最后一个式子吗?????????? 这是甲鱼口误 ←_← N多鱼油提出过这个问题了 O(∩_∩)O~ 你自己看看运算符的优先级吧。等于6木有错啊,赋值优先于逗号。
y=(x=a+b,b+c);这样结果就不一样了 对,甲鱼口误了,事实上是y最后被x赋值,并非b+c ,号运算符优先级高于=值运算符 3楼正解:handshake
页:
[1]