【发布时间】:2012-07-25 15:03:44
【问题描述】:
是
--foo++;
C 中的有效语句? (它会编译/运行)这有什么实际应用吗?
很抱歉在编辑中更改了问题,但我发现了一些问题。
根据我的 C++ 编译器(Visual Studio 2010):
--++foo;
是一个有效的命令但是
foo--++;
不是。这有什么原因吗?
【问题讨论】:
-
为什么?这会有什么目的? (没有投反对票,但这让我想知道为什么有人甚至想知道这个 - 谁会编写这样的代码)
-
首要问题是这是否是合法的命令。
-
这个问题的第一部分是反复试验。第二部分是用你的脑袋...
-
@nos 不知道会发生什么,但想知道为什么甚至会出现这种情况——我认为这样的代码没有多大好处。
-
@nos 问题是它是否是一个有效的声明(即编译器没有抱怨)。不是结果如何。通过将
--foo++提供给编译器,可以轻松确定--foo++是否为“有效语句”。没有错误说“有效”。
标签: c++ c post-increment pre-increment