已知int i,a;,执行语句i=(a=2*3,a*5),a+6;后,变量i的值是30.为什么?
展开全部
i=(a=2*3,a*5),a+6
这是一个逗号表达式,其结果是最后一个逗号后的表达式的结果,即a+6。不过,这里没有使用这个表达式的值。
i=(a=2*3,a*5),a+6;在任何表达式的末尾都可以加上分号,构成表达式语句。
执行这个语句后,变量i的值为30,变量a的值为6。
这是一个逗号表达式,其结果是最后一个逗号后的表达式的结果,即a+6。不过,这里没有使用这个表达式的值。
i=(a=2*3,a*5),a+6;在任何表达式的末尾都可以加上分号,构成表达式语句。
执行这个语句后,变量i的值为30,变量a的值为6。
更多追问追答
追问
结果是最后一个逗号后的表达式的值,为什么不是a+6的值?
追答
i=(a=2*3,a*5),a+6 这是一个逗号表达式
里头又由两个表达式构成,一个是:i=(a=2*3,a*5)
另一个是:a+6
计算逗号表达式的时候,先计算整个表达式左边的表达式,即i=(a=2*3,a*5) ,再计算右边的表达式:a+6
说明:i=(a=2*3,a*5) 这是一个赋值表达式,表达式右边圆括号中,又是一个逗号表达式.
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2020-05-19
展开全部
a=2*3=6
i=a*5=30
i=a*5=30
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
i=2*3*6, a+6是另外的,不用去管
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询