[英]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.Power(10,exp) works like charm...
在 C# 中,^ 运算符是逻辑 XOR 运算符。
问题是^
等同于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.