2个回答
展开全部
这个太有区别了!
a==b==c 是一个关系表达式,由于运算符"=="具有左结合性,故其运算顺序是:
((a==b) ==c )
若a=5,b=5,c=5,则a==b的值为1,而1==c的结果为0
a==b,b==c是分别判断a和b以及b和c关系运算
补充,楼上说a==b==c是先执行b==c是错误的,因为C语言中只有赋值运算符和单目运算符具有右结合性,故运算对象b必然先于左侧的"=="结合。
再次补充:这不是赋值的问题,没有赋值运算符,而是关系运算
a==b==c 是一个关系表达式,由于运算符"=="具有左结合性,故其运算顺序是:
((a==b) ==c )
若a=5,b=5,c=5,则a==b的值为1,而1==c的结果为0
a==b,b==c是分别判断a和b以及b和c关系运算
补充,楼上说a==b==c是先执行b==c是错误的,因为C语言中只有赋值运算符和单目运算符具有右结合性,故运算对象b必然先于左侧的"=="结合。
再次补充:这不是赋值的问题,没有赋值运算符,而是关系运算
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询