设有int x=2,y;执行语句x=(y=3,2+y,2*y)后,则变量x的值为 给出具体解体过程

谁能说下这种题怎么做,给个例子,有详细讲解更好啦
2025-05-13 16:43:20
推荐回答(2个)
回答1:

y=3,y被赋值3
2+y为5,因为逗号被丢弃了
2 * y值为6,作为整个逗号表达式的值赋值给x,因此,完了x的值为6

回答2:

y=2,
!x&&(y++);
他们之间是逻辑与,
前面已经可以判断出假了,因此后边就不用执行了,因此也就不用执行y++;
所以y的值保持不变