
C语言中:a=(1,2,3),(4,5,6)请问a值和表达式值都是多少,为什么?
3个回答
展开全部
答案应该是3,原理:
优先级是括号最大其次是赋值运算符,然后是逗号运算符,所以先运算:a=(1,2,3)的括号,由于逗号运算符是从左到右运算所以值应该是3,然后再把3赋值给a,所以a值应该是3,再运算后面括号(4,5,6),值同理是6,然后整个表达式的值就可以简化成 3,6 ,按照逗号的运算值是6,所以整个表达式值是6
优先级是括号最大其次是赋值运算符,然后是逗号运算符,所以先运算:a=(1,2,3)的括号,由于逗号运算符是从左到右运算所以值应该是3,然后再把3赋值给a,所以a值应该是3,再运算后面括号(4,5,6),值同理是6,然后整个表达式的值就可以简化成 3,6 ,按照逗号的运算值是6,所以整个表达式值是6
展开全部
楼主的语句是错误的,应该还加上一对括号
如:
a = ( (1,2,3), (4,5,6));
最终a的值是6 。
其实原理很简单,就看看逗号表达式就好了。
逗号表达式的值就是最后一个数或者语句的值!
如:
a = ( (1,2,3), (4,5,6));
最终a的值是6 。
其实原理很简单,就看看逗号表达式就好了。
逗号表达式的值就是最后一个数或者语句的值!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
a=3,表达式为6
说楼主语句错误的那位朋友,a=(1,2,3),(4,5,6)不是一个语句,只是个表达式而已
a=(1,2,3),(4,5,6)
→a=3,(4,5,6)
→3,6
→6
说楼主语句错误的那位朋友,a=(1,2,3),(4,5,6)不是一个语句,只是个表达式而已
a=(1,2,3),(4,5,6)
→a=3,(4,5,6)
→3,6
→6
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询