gpt4 book ai didi

c# - C、C++、Java 和 C# 中的前后递增运算符行为

转载 作者:IT老高 更新时间:2023-10-28 13:23:09 26 4
gpt4 key购买 nike

免责声明: 这不是一个真实的例子。这只是这些语言如何工作的理论问题。

C/C++、C# 和 Java 在后自增运算符和预自增运算符方面到底有什么区别?

这就是我使用 VC++10、Java 1.6 和 C# 4 得到的结果

int a = 2;
int b = a++ + a++;
int c = ++a + a++ + a++;

+-----+------+------+----+
| C | C++ | Java | C# |
+-----+-----+------+------+----+
| a | 7 | 7 | 7 | 7 |
+-----+-----+------+------+----+
| b | 4 | 4 | 5 | 5 |
+-----+-----+------+------+----+
| c | 15 | 15 | 16 | 16 |
+-----+-----+------+------+----+

最佳答案

Java 和 C# 从左到右计算表达式,并且副作用是可见的立即

在 C++ 中,子表达式的求值顺序是未指定的,在没有中间序列点的情况下修改同一个对象两次是未定义的行为。

关于c# - C、C++、Java 和 C# 中的前后递增运算符行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6457130/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com