3

我发现一些非常奇怪的东西,如果我在 excel 和 c# 中使用下面的表达式,我会得到不同的结果。

(1) ^ (-12)

Excel 给出 1,c# 给出 -11。

哪一个是对的?

4

3 回答 3

19

在 Excel 中^意味着取幂。在 C# 中,它表示按位异或。它们是完全不同的操作;他们使用相同的符号只是巧合。

Math.Pow在 C# 中用于求幂。

于 2013-04-24T19:49:56.070 回答
13

他们都是对的,因为^在不同的上下文中意味着不同的东西。

在 C# 中,它是按位 XOR 运算符

在 Excel 中,它是“幂”运算符,用于将一个数字提升到另一个数字的幂 (x y )。

于 2013-04-24T19:49:36.807 回答
6

嗯,数学上正确的答案是 1。

抑扬符 (^) 是 C# 中的逻辑 XOR 运算符(请参阅文档),结果为 11。

要在 c# 中提升x权力,请使用.yMath.Pow(x, y)

于 2013-04-24T19:53:16.400 回答