문제
해결책
& 운영자와 함께
다른 팁
var x = 1 & 5;
//x will = 1
const uint
BIT_ONE = 1,
BIT_TWO = 2,
BIT_THREE = 4;
uint bits = BIT_ONE + BIT_TWO;
if((bits & BIT_TWO) == BIT_TWO){ /* do thing */ }
사용 및 운영자 (&&)
int a = 42;
int b = 21;
int result = a & b;
조금 더 많은 정보는 여기에 첫 번째 Google 결과가 있습니다.
http://weblogs.asp.net/alessandro/archive/2007/10/02/bitwise-operators-in-c-xor-and-amp-amp-min.aspx
그만큼 & 운영자
var result = (UInt32)1 & (UInt32)0x0000000F;
// result == (UInt32)1;
// result.GetType() : System.UInt32
결과를 INT에 캐스팅하려고하면 0x80000000에서 시작하여 오버플로 오류가 발생할 수 있습니다. 확인되지 않은 경우 비트 마스크로 작업 할 때 드문 오류 오류를 피할 수 있습니다.
result = 0xFFFFFFFF;
Int32 result2;
unchecked
{
result2 = (Int32)result;
}
// result2 == -1;
제휴하지 않습니다 StackOverflow