我在C#中有一个短变量,想要更改一个特定的位。我怎样才能以最简单的方式做到这一点?
答案 0 :(得分:6)
你的意思是这样吗?
public static short SetBit(short input, int bit)
{
return (short) (input | (1 << bit));
}
public static short ClearBit(short input, int bit)
{
return (short) (input & ~(1 << bit));
}
如果你愿意,你甚至可以使它们成为扩展方法。
答案 1 :(得分:4)
看一下按位运算符:
short i = 4;
short k = 1;
Console.WriteLine(i | k); //should write 5
您可以在Logical (boolean and bitwise)
部分here下找到运营商列表。
另外,做了一些探讨并发现this bitwise helper class。根据您的需要,可能值得一试。