这个表达式的执行顺序是从内向外,
先执行
(a=2*3,a*5)
由于=的优先级高于逗号,所以它等价于((a=2*3),a*5),因此,在此之后a的值是6
再执行
((a=2*3,a*5),a+6)
由于内部的逗号表达式的返回值没有被接收,因此内部的逗号表达式的返回值被抛弃,并且这个外部逗号表达式会返回a+6的值,由于a==6,所以a+6是12,即i=12
这个表达式的执行顺序是从内向外,
先执行
(a=2*3,a*5)
由于=的优先级高于逗号,所以它等价于((a=2*3),a*5),因此,在此之后a的值是6
再执行
((a=2*3,a*5),a+6)
由于内部的逗号表达式的返回值没有被接收,因此内部的逗号表达式的返回值被抛弃,并且这个外部逗号表达式会返回a+6的值,由于a==6,所以a+6是12,即i=12