C语言(z=0,(x=2)||(z=1),z)的值为什么等于0?按照逗号表达式的运算法则,整个表达式的值应该等于最后一个逗号后面的表达式的值,在这里也就是Z的值,z被赋值为1了,为什么整个表达式的值为0?

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/08 05:10:44
C语言(z=0,(x=2)||(z=1),z)的值为什么等于0?按照逗号表达式的运算法则,整个表达式的值应该等于最后一个逗号后面的表达式的值,在这里也就是Z的值,z被赋值为1了,为什么整个表达式的值为0?

C语言(z=0,(x=2)||(z=1),z)的值为什么等于0?按照逗号表达式的运算法则,整个表达式的值应该等于最后一个逗号后面的表达式的值,在这里也就是Z的值,z被赋值为1了,为什么整个表达式的值为0?
C语言(z=0,(x=2)||(z=1),z)的值为什么等于0?
按照逗号表达式的运算法则,整个表达式的值应该等于最后一个逗号后面的表达式的值,在这里也就是Z的值,z被赋值为1了,为什么整个表达式的值为0?

C语言(z=0,(x=2)||(z=1),z)的值为什么等于0?按照逗号表达式的运算法则,整个表达式的值应该等于最后一个逗号后面的表达式的值,在这里也就是Z的值,z被赋值为1了,为什么整个表达式的值为0?
你没有弄明白 || 运行符的用法,当或运算符的左边的表达式为true时,它右边的表达式将不会被计算,显然,(x=2)为true,所以z仍然为0.