0

可能重复:
两个字节变量上的 C# XOR 不会在没有强制转换的情况下编译

为什么在此 C# 代码中出现编译错误?

void test()
{
   ushort a = 0;
   ushort b = 0;
   ushort c = a ^ b; //ERROR
}

错误 CS0266:无法将类型“int”隐式转换为“ushort”。存在显式转换(您是否缺少演员表?)

4

1 回答 1

3

看看这个:C# XOR on two byte variables will not compile without a cast

基本上,使用位运算符,任何小于 int 的操作数都会自动转换为 int。

于 2012-10-10T11:49:59.750 回答