设变量x,y,a,b,c,d的值为1,计算表达式(x=a!=b)&&(y=c!=d)后,变量x,y的值分别是:

问题描述:

设变量x,y,a,b,c,d的值为1,计算表达式(x=a!=b)&&(y=c!=d)后,变量x,y的值分别是:

a!=b为假,故x=0
判断x=a!=b为假后就不再判断y=c!=d 所以y还是1

!=的优先级比赋值“=”的优先级大,所以上边表达式可以写成这样:
(x=(a!=b))&&(y=(c!=d))
这样就可以看出结果来了.