i--+--i 的值是多少?

moliu 2017-07-26 12:46:15
c++ 里:
int ia (5),ib(5);
ia = ia-- + ia--;
ib = ib-- + --ib;

-----据教程说,前者 ia = 4+ 4 =8;后者 ib = 3 + 4 = 7.
很糊涂啊, 特别是 后者。请高手讲下,谢谢。
...全文
573 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
a昊a 2017-08-15
  • 打赏
  • 举报
回复
首先++和--运算符优先级高于+和-然后符号在变量前,先计算后参与更低级的运算,运算符在变量后面的先用原变量值进行更低级运算,然后进行自+或自-
不懂啊不懂 2017-08-05
  • 打赏
  • 举报
回复
只要记得一句话,加(减)在前,先加(减); 加(减)在后,后加(减)。 完美解决!
找一缕阳光呀 2017-08-04
  • 打赏
  • 举报
回复
后面那个应该是减过之后在用
moliu 2017-07-26
  • 打赏
  • 举报
回复
匠人就是匠人!
moliu 2017-07-26
  • 打赏
  • 举报
回复
大师就是大师!
jena_wy 2017-07-26
  • 打赏
  • 举报
回复
00171435 mov eax,dword ptr [ib] 00171438 sub eax,1 0017143B mov dword ptr [ib],eax 0017143E mov ecx,dword ptr [ib] 00171441 add ecx,dword ptr [ib] 00171444 mov dword ptr [ib],ecx 00171447 mov edx,dword ptr [ib] 0017144A sub edx,1 0017144D mov dword ptr [ib],edx
赵4老师 2017-07-26
  • 打赏
  • 举报
回复
lunat 2017-07-26
  • 打赏
  • 举报
回复
序列点之间同一产量两次副作用是不符合标准的。
战在春秋 2017-07-26
  • 打赏
  • 举报
回复
自增自减表达式作为子表达式参加进一步运算时,整个表达式的求值顺序是 不确定的 (unspecified behavior) 对于不同的编译器会得出不同的结果。 经常在论坛看到此类问题,可能和现行教材有关系,不知道什么时候能改过来^_^。 可以参考这篇文章,讲解很详细,稍微有点长,可以直接到结尾先看结论,再回头看。 http://blog.csdn.net/dreamerway/article/details/24630299

33,319

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧