大家好我想知道这个符号是什么" ^"用于c#
这个简单的代码
public static Byte[] Xor = new Byte[] {0x77, 0xE8, 0x5E, 0xEC, 0xB7};
public static Byte[] data = new Byte[5];
static byte[] convertsomething(){
Byte xors = 0;
for (int i = 0; i < 100; i++)
{
data[i] ^= Xor[xors];
xors++;
}
return data;
}
对于c#代码我们有变量数据如何将其转换回main 值或与此操作数据相反的是[i] ^ = Xor [xors];
答案 0 :(得分:3)
在C#中,^ operator是boolean logical operator,其目的是执行Exclusive or (XOR)操作。
对于bool操作数,只有当两个操作数中的一个为真时,此操作的结果才会返回true,这意味着:
true ^ true // Will return false
false ^ false // Will return false
true ^ false // Will return true
对于积分操作数,它执行按位异或,示例(在括号中显示二进制表示):
1 (1) ^ 1 (1) // Will return 0 (0)
0 (0) ^ 0 (0) // Will return 0 (0)
1 (1) ^ 0 (0) // Will return 1 (1)
2 (10) ^ 1 (1) // Will return 3 (11)
15 (1111) ^ 5 (101) // Will return 10 (1010)
^= operator 将对左右操作数执行相同的操作,这意味着x ^ = y与x = x ^ y相同。
XOR的真值表可以帮助理解:
A B Result
0 0 0
0 1 1
1 0 1
1 1 0
答案 1 :(得分:0)
它是一个二元运算符,Binary ^运算符是为整数类型和bool
预定义的 x ^= y
被评估为x = x ^ y
基本上^运算符允许
// When one operand is true and the other is false, exclusive-OR
// returns True.
Console.WriteLine(true ^ false);
// When both operands are false, exclusive-OR returns False.
Console.WriteLine(false ^ false);
// When both operands are true, exclusive-OR returns False.
Console.WriteLine(true ^ true);
有关运营商@ https://msdn.microsoft.com/en-us/library/0zbsw2z6.aspx&amp;的更多信息https://msdn.microsoft.com/en-us/library/zkacc7k1.aspx