int x=2,y=3,z=4; 则表达式x+(y>!z)的值为【1】.intx=2,y=3,z=4; 则表达式x+(y>!z)的值为3 为什么为3

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/27 20:40:16
int x=2,y=3,z=4; 则表达式x+(y>!z)的值为【1】.intx=2,y=3,z=4; 则表达式x+(y>!z)的值为3 为什么为3

int x=2,y=3,z=4; 则表达式x+(y>!z)的值为【1】.intx=2,y=3,z=4; 则表达式x+(y>!z)的值为3 为什么为3
int x=2,y=3,z=4; 则表达式x+(y>!z)的值为【1】.
intx=2,y=3,z=4; 则表达式x+(y>!z)的值为3
为什么为3

int x=2,y=3,z=4; 则表达式x+(y>!z)的值为【1】.intx=2,y=3,z=4; 则表达式x+(y>!z)的值为3 为什么为3
事情是这样的.
z 不为 0,所以!z为布尔值false,转化成int就是0
y > 0,显然为布尔值true,转化成int就是1
x + 1 就是3.
注意中间有一系列隐式类型转换