
C语言中y=(b=2,3*2)怎么理解?谢谢各位大侠的帮助啊
3个回答
展开全部
1.大体来看,这个表达式分两层。最外层的赋值表达式以及括号内的逗号表达式。
2.赋值表达式从右往左进行,同时括号的优先级高于赋值符号 = ,因此先计算括号内的逗号表达式。
3.在C的所有操作符中,逗号操作符优先级最低,而逗号操作符又是双目操作符,结合性从左往右。因此先执行逗号左侧的赋值表达式b = 2,然后在执行逗号右侧的表达式3 * 2.最终,逗号表达式的值就是最右侧的表达式3 * 2的值,6
4最终,括号内逗号表达式的值为6,执行最外层的赋值操作,y = 6.
结束
2.赋值表达式从右往左进行,同时括号的优先级高于赋值符号 = ,因此先计算括号内的逗号表达式。
3.在C的所有操作符中,逗号操作符优先级最低,而逗号操作符又是双目操作符,结合性从左往右。因此先执行逗号左侧的赋值表达式b = 2,然后在执行逗号右侧的表达式3 * 2.最终,逗号表达式的值就是最右侧的表达式3 * 2的值,6
4最终,括号内逗号表达式的值为6,执行最外层的赋值操作,y = 6.
结束
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询