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

来源:学生作业帮助网 编辑:作业帮 时间:2024/07/20 19:16:43
C语言(z=0,(x=2)||(z=1),z)的值为什么等于0?按照逗号表达式的运算法则,整个表达式的值应该等于最后一个逗号后面的表达式的值,在这里也就是Z的值,z被赋值为1了,为什么整个表达式的值为0?
xNP_%$7 ,| w551M7%%ER^fˊWƕ;rr|9gFI'wĠ',ru5#vDj"!j7H]QgSXKZD%E8|fZQEQ])gH5R3_X;bnՋ1iZHVf?uW,مA@IWx͜{99`1Ft.MI"˛\c ̠00+HُD{Ia b

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.