如何更改Short内的位

Wee*_*djo 3 .net c# short bit

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

Jon*_*eet 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));
}
Run Code Online (Sandbox Code Playgroud)

如果你愿意,你甚至可以使它们成为扩展方法.