若有定义:int m=5,n=3;则表达式(m+1,n+1,(--m)+(n--))的值 答案是5.

问题描述:

若有定义:int m=5,n=3;则表达式(m+1,n+1,(--m)+(n--))的值 答案是5.
若有定义:int m=5,n=3;则表达式(m+1,n+1,(--m)+(n--))的值
答案是5.4.7 问题是为什么?
1个回答 分类:综合 2014-11-29

问题解答:

我来补答
这是用两个逗号将三个表达式连成的一个逗号表达式.
计算该逗号表达式值时,从左至右逐一计算每个表达式的值.该逗号表达式的值是最后一个表达式的值,该表达式类型也是最后一个表达式的类型.所以这个表达式(m+1,n+1,(--m)+(n--)),m的最后的值(--m)之后m是4,n的值(n--)之后n还是3,所以m+1 的值是 5;n+1的值是4,(m+1,n+1,(--m)+(n--)) 最终的值应该是 5,4,7
 
 
展开全文阅读
剩余:2000