Programming_Language/C++

[C++개념] 비트 연산자

유쾌한고등어 2023. 2. 22. 02:09
#define HUNGRY	0x01
#define THIRSTY 0x02
#define TIRED	0x04
#define FIRE	0x08

#define COLD	0x10
#define POISON	0x20

int main(){
	
	// 비트 단위 연산
	// & 둘다 1인 경우 1
	// | 둘중 하나라도 1 이면 1
	// ^ 같으면 0,다르면 1
	// ~1 은 0으로, 0은 1로
	
	unsigned int iStatus = 0;
	
	// 상태 추가
	iStatus |= HUNGRY;
	iStatus |= THIRSTY;
	
	// 상태 확인
	if(iStatus & THIRSTY)
	{
		
	}
	
	// 특정 자리 비트 제거(암기!!!)
	iStatus &= ~THIRSTY;
	
	return 0;
}