繁体   English   中英

^ 运算符是做什么的?

[英]What does ^ operator do?

我以为 ^ 做到了。 我期望:

10^0=1
10^1=10
10^2=100

我得到了什么

10^0=10
10^1=11
10^2=8

实际代码是

int value = 10 ^ exp;

将 exp 替换为 0、1 和 2 ^ 运算符有什么作用?

Math.Pow(x, y) 将 x 提高到 y 的幂。 你正在做一个异或。 C# 运营商

你想做:

Math.Pow(10, exp);

这实际上会产生一个double ,所以如果你真的想要一个int ,你需要把它扔掉。

在 c# 中,^ 是逻辑 XOR 运算符

正如其他人所说,您需要使用Math.pow(x, y)在 C# 中执行x^y ^ 运算符实际上是对两个数字的位进行逻辑 XOR 运算符。 可以在此处找到有关逻辑 XOR 的更多信息: http://msdn.microsoft.com/en-us/library/zkacc7k1.aspx

没有此操作符。 使用Math.Pow

有所有C# 运算符的完整列表,每个运算符都有链接文档。

Math.Power(10,exp) works like charm...

在 C# 中,^ 运算符是逻辑 XOR 运算符。

http://msdn.microsoft.com/en-us/library/6a71f45d.aspx

^是 XOR 运算符。

http://en.wikipedia.org/wiki/Xor

如果你想提高一个数字的权力,使用

Math.Pow(num, exp);

问题是^等同于XOR ,这就是为什么 10 ^ 0 = 10 因为

1010 XOR    1010 XOR
0000 =      0010 =
1010        1000

您需要使用Math.Pow方法。

PS = 10^2 实际上返回 8...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM