求助,关于C++运算符结合性自右向左的问题

 我来答
_277282419
2017-02-09 · TA获得超过631个赞
知道小有建树答主
回答量:227
采纳率:100%
帮助的人:127万
展开全部

运算符的结合性 即运算符的结合方向。

其实通俗理解就是当一个存在1个以上的同级运算符表达式 哪个运算符先运算的问题

例如:

int i = 2*2+1*8/4;

根据运算符的优先级别我们知道此时上面的这个表达式应该先做“ *”和“/”的运算发现没有这就存在了2个同级运算符号了。 如果没有运算符的结合方向的话那你说说 我们先计算哪个?? 2*2 ? 还是 1*3 还是3/4 这个不就乱了吗!是不是

我们知道* /都是属于算术运算符号了 它们的结合性都是:自左向右,也就是意味着先运算此时表达式里最走边的 也就是*号运算符了

  1. int i = 4+1*8/4;

  2. int i = 4+8/4;到了这一步不存在优先级同样的了 这个时候就是优先级别来决定哪个先计算

  3. int i = 4+2;

  4. int i = 6;

    最后i = 6;

至于你提出的自右向左应该是说的‘’=‘’赋值运算符号吧.

说白了就是“哪个先运算的事”

优先级:决定哪个运算符先运算

结合性:就是当一个存在1个以上的同级运算符表达式 哪个运算符先运算的问题

就和小学学的数学是一个道理。概念的区分理解 会对我们编程有大的帮助。

谢谢!

arongustc
科技发烧友

2017-02-08 · 智能家居/数码/手机/智能家电产品都懂点
知道大有可为答主
回答量:2.3万
采纳率:66%
帮助的人:6003万
展开全部
你想问什么
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式