为了账号安全,请及时绑定邮箱和手机立即绑定

增量后和增量前的概念?

增量后和增量前的概念?

C++
凤凰求蛊 2019-06-18 13:04:34
增量后和增量前的概念?我不明白后缀和前缀增加或减少的概念。有人能给出更好的解释吗?
查看完整描述

3 回答

?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

到目前为止,这四个答案都是不正确,在这一点上,他们主张一个特定的事件顺序。

相信“都市传奇”已经导致许多新手(和专业)误入歧途,也就是说,无休止的问题,在表达中的未定义的行为。

所以。

对于内置C+前缀运算符,

++x

增量x并生成表达式结果。x作为一种价值,而

x++

增量x的原始值作为表达式的结果。x.

特别是x++没有无时间订购原值的增值和产生x..编译器可以自由地发出产生原始值的机器代码。x,例如,它可能存在于某个寄存器中,并且将增量延迟到表达式的末尾(下一个序列点)。

那些不正确地认为增量必须放在第一位的人,而且他们很多人,常常从以下结论中得出结论:某些表达式必须具有定义良好的效果,而实际上他们有未定义的行为。


查看完整回答
反对 回复 2019-06-18
?
茅侃侃

TA贡献1842条经验 获得超21个赞

int i, x;i = 2;x = ++i;// now i = 3, x = 3i = 2;x = i++; // now i = 3, x = 2

“POST”是指后面-也就是说,增量是在读取变量之后完成的。“Pre”的意思是前面的意思-因此变量值先递增,然后在表达式中使用。


查看完整回答
反对 回复 2019-06-18
?
精慕HU

TA贡献1845条经验 获得超8个赞

没有人回答这个问题:为何这个概念令人困惑?

作为一名计算机科学专业的本科生,我花了一段时间才明白这一点,因为我的阅读方式密码。

以下是不正确的!


x=y+

X等于y增量这在逻辑上似乎意味着X等于Y的值完成增量运算。意义.

X=+y
X等于y-增量。这在逻辑上似乎意味着X等于Y的值以前完成增量运算。意义以前.


它的工作方式实际上正好相反。这个概念令人困惑,因为语言具有误导性。在这种情况下,我们不能使用单词来定义行为。
X=+y实际上读取为X等于Y的值增量。
X=y+实际上读取为X等于Y的值以前增量。

“前”和“后”是关于英语的语义学..它们只表示+与Y的关系,仅此而已。

就我个人而言,如果我有选择的话,我会转换+y和y+的含义。这只是一个我必须学习的成语的例子。

如果这种疯狂有什么办法的话,我想简单地说一下。

谢谢你的阅读。


查看完整回答
反对 回复 2019-06-18
  • 3 回答
  • 0 关注
  • 599 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信