C# 在c中操纵Nybles和更小的#
我有一个应用程序,需要一次操作甚至可能是单个位。C#中是否有一个库可以帮助我?您可以使用它来操作32位整数中的位,并拥有一个表示一组布尔变量的位数组 此外,编写两个函数来处理单个位也非常容易:C# 在c中操纵Nybles和更小的#,c#,bit-manipulation,C#,Bit Manipulation,我有一个应用程序,需要一次操作甚至可能是单个位。C#中是否有一个库可以帮助我?您可以使用它来操作32位整数中的位,并拥有一个表示一组布尔变量的位数组 此外,编写两个函数来处理单个位也非常容易: public bool GetBitValue(int integer, int bit) { return (integer & (1 << bit)) != 0; } public bool SetBitValue(ref int integer, int bit, b
public bool GetBitValue(int integer, int bit) {
return (integer & (1 << bit)) != 0;
}
public bool SetBitValue(ref int integer, int bit, bool value) {
if (value)
integer |= 1 << bit;
else
integer &= ~(1 << bit);
}
public bool GetBitValue(整数,整数位){
return(integer&(1可用于操作32位整数中的位,并具有表示一组布尔变量的位数组
此外,编写两个函数来处理单个位也非常容易:
public bool GetBitValue(int integer, int bit) {
return (integer & (1 << bit)) != 0;
}
public bool SetBitValue(ref int integer, int bit, bool value) {
if (value)
integer |= 1 << bit;
else
integer &= ~(1 << bit);
}
public bool GetBitValue(整数,整数位){
return(integer&(1库实际上是不必要的
uint myVar = 257;
const uint SOME_FLAG_A = 256 // 100000000
const uint SOME_FLAG_B = 16 // 000010000
const uint SOME_FLAG_C = 1 // 000000001
if(myVar & SOME_FLAG_A == SOME_FLAG_A)
Console.WriteLine("Bit A is set!");
else
Console.WriteLine("Bit A is not set.");
if(myVar & SOME_FLAG_B == SOME_FLAG_B)
Console.WriteLine("Bit B is set!");
else
Console.WriteLine("Bit B is not set.");
myVar = myVar | SOME_FLAG_B;
if(myVar & SOME_FLAG_B == SOME_FLAG_B)
Console.WriteLine("Bit B is set!");
else
Console.WriteLine("Bit B is not set.");
if(myVar & SOME_FLAG_C == SOME_FLAG_C)
Console.WriteLine("Bit C is set!");
else
Console.WriteLine("Bit C is not set.");
图书馆真的没有必要
uint myVar = 257;
const uint SOME_FLAG_A = 256 // 100000000
const uint SOME_FLAG_B = 16 // 000010000
const uint SOME_FLAG_C = 1 // 000000001
if(myVar & SOME_FLAG_A == SOME_FLAG_A)
Console.WriteLine("Bit A is set!");
else
Console.WriteLine("Bit A is not set.");
if(myVar & SOME_FLAG_B == SOME_FLAG_B)
Console.WriteLine("Bit B is set!");
else
Console.WriteLine("Bit B is not set.");
myVar = myVar | SOME_FLAG_B;
if(myVar & SOME_FLAG_B == SOME_FLAG_B)
Console.WriteLine("Bit B is set!");
else
Console.WriteLine("Bit B is not set.");
if(myVar & SOME_FLAG_C == SOME_FLAG_C)
Console.WriteLine("Bit C is set!");
else
Console.WriteLine("Bit C is not set.");
nybble是一个完全有效的拼写,但我会删除无关的标记。每天学习新的东西。然而,nybble和颜色一样没有吸引力;Dnybble是一个完全有效的拼写,但我会删除无关的标记。每天学习新的东西。然而,Nyble和颜色一样没有吸引力;D