1

在 C#Console.WriteLine(16 ^ 2);中给了我18

但在 VB.Net 中Console.WriteLine(16 ^ 2)给了我256

为什么这样 ?

4

2 回答 2

6

在 C# 中,^ 是按位异或运算符。C# ^ 运算符

所以如果你代表 16 位你有

10000

2是

00010

XOR 表示如果只有一个操作数在相应位置为 1,则您得到 1:

 10000
+00010
=10010

转换为 18。

在 VB 中,它是幂运算符。VB ^ 运算符

如果你用 2 的幂加注 16,就好像你有:

16 * 16 = 256
于 2013-08-03T08:12:09.533 回答
2

C#中有Math.Pow(x, y)函数。

但在 VB.NET 中,^ 直接用于表示功率,就像我们在简单数学中所做的那样。

于 2013-08-03T08:15:44.840 回答