Dream0 发表于 2015-7-22 18:28:02

为什么逗号表达式会运算错误了?求教

谢谢啦~~

哥斯拉不说话 发表于 2015-7-22 20:34:01

优先级问题,赋值运算符 的 优先级 比 逗号运算符 的 优先级 高

Dream0 发表于 2015-7-22 20:42:23

哥斯拉不说话 发表于 2015-7-22 20:34
优先级问题,赋值运算符 的 优先级 比 逗号运算符 的 优先级 高

逗号运算不是只算后面的那个表达式吗?怎么算出来还是9,而不是10呢?

桃花飞舞 发表于 2015-7-22 21:11:00

y = (x = a + b),(b + c)等价于y = ( x = a + b); (b+c)

Dream0 发表于 2015-7-23 11:12:31

桃花飞舞 发表于 2015-7-22 21:11
y = (x = a + b),(b + c)等价于y = ( x = a + b); (b+c)

我还是不太懂,麻烦给点详细的解答,谢谢~~~

桃花飞舞 发表于 2015-7-23 11:26:04

y =((x = a + b),(b + c))这样就是10了,y = (x = a + b),(b + c)这是一个逗号表达式,逗号左边是y = (x = a + b) = 9逗号右边是b + c = 10.逗号表达式的值是 10 ,剩下的就不用我说了把

Dream0 发表于 2015-7-23 12:32:29

桃花飞舞 发表于 2015-7-23 11:26
y =((x = a + b),(b + c))这样就是10了,y = (x = a + b),(b + c)这是一个逗号表达式,逗号左边是y = (x = a...

感谢啊~~~~

牛奶咖啡丶 发表于 2015-12-4 14:19:51

y = (x = a + b),(b + c)
可以看成 y = x, b + c
即 y = 9, 10
因为赋值运算符的优先级比逗号运算符的优先级高,所以y = 9.
页: [1]
查看完整版本: 为什么逗号表达式会运算错误了?求教