Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
C#Console.WriteLine(16 ^ 2);で私に与える18
Console.WriteLine(16 ^ 2);
18
しかし、VB.NetではConsole.WriteLine(16 ^ 2)私に与えます256
Console.WriteLine(16 ^ 2)
256
なんでそうなの ?
C# では ^ はビットごとの XOR 演算子です。C# ^ 演算子
したがって、16 をビットで表すと、
10000
そして2は
00010
XOR は、オペランドの 1 つだけが対応する場所に 1 を持っている場合に 1 を取得することを意味します。
10000 +00010 =10010
これは18に変換されます。
VB ではべき乗演算子です。VB ^ 演算子
2 の累乗で 16 をレイズした場合:
16 * 16 = 256
Math.Pow(x, y)C# には関数があります。
Math.Pow(x, y)
しかし、VB.NET では、単純な数学で行うように、べき乗を示すために ^ が直接使用されます。