Login
网站首页 > 文章中心 > 其它

运算符的结合顺序_c语言中那些运算是左结合那些是右结合

作者:小编 更新时间:2023-07-27 07:59:17 浏览量:3人看过

运算符优先级的结合顺序的疑问a = ~a◆◆

◆◆其实是两个运算符,前置的和~优先级一样,并且是从右到左结合的。 后置的◆◆优先级比~低,并且是从左向右结合的。

运算符的左结合,右结合

运算顺序

先说第二个吧

a-=b◆c◆d;就等于是a=a-(b◆c◆d);赋值运算符的结合顺序是由右到左,括号里面先结合,加号从左到右。

第一个

y?10:3);

这个括号先结合,然后括号里面的三目运算符进行运算。

主要问题是结合顺序和运算顺序的问题,我说说我的理解,希望对你有帮助,比如(◆◆i)◆(◆◆i)◆(◆◆i),这个式子,你只能根据优先级的表确定括号里面的先执行,但是谁都不能确定的告诉你三个式子是哪个先执行,所以有了不同的结果,在c的标准里面,这个是没有规定运算顺序的,在c的标准里面,有且仅有四个运算符是规定了运算顺序的,注意是运算顺序,那就是与,或||,逗号运算符,,唯一的三目运算符?:,除了这四个运算符规定是从左到右执行的,剩下的都没有规定运算顺序。

关于C语言条件运算符的结合顺序?!!!

大家注意,结合顺序不等于求值顺序。条件表达式的求值顺序是这样规定的:

test ? exp1 : exp2;

条件测试部分test非零,表达式exp1被求值,否则表达式exp2被求值,并且保证exp1和exp2两者之中只有一个被求值。该运算符是右结合的值是要告诉你:后面不管跟了多大多长的表达式只要它是合法的那就整个被看作exp2。

d?c:d)

d?c:d),就算你后面是优先级比条件运算符还高的操作符组成的表达式,它也得按照条件运算符的求值规则求值。

比如说

b ? (x = 200) : (x◆y);

y?(x = 200):(y = 350); 就不要我再作解释了吧!

以上就是土嘎嘎小编大虾米为大家整理的运算符的结合顺序_c语言中那些运算是左结合那些是右结合相关主题介绍,如果您觉得小编更新的文章对您有所帮助,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章