如何更改Short内的位

时间:2013-05-02 15:40:44

标签: c# .net bit short

我在C#中有一个短变量,想要更改一个特定的位。我怎样才能以最简单的方式做到这一点?

2 个答案:

答案 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。根据您的需要,可能值得一试。