2017-03-03 1 views
0

각 int가 1 비트를 갖는 int 비트 필드의 배열을 만들고 싶습니다. 즉, 모든 숫자가 1 또는 0이 될 것입니다. 어떻게 코딩 할 수 있습니까? 비트 배열을 만드는 방법은 무엇입니까?

나는
struct bitarr { 
    int arr : 1[14]; 
}; 

을 시도하지만 컴파일하지 않고, 나는 이것이 당신이 비트의 배열을 할 수있는 방법

답변

2

이라고 생각하지 않습니다. 대신 비트에 단일 16 비트 변수를 만든 다음 i[myindex]으로 액세스하는 대신 bitsVariable & (1 << myindex)으로 액세스 할 수 있습니다.

비트를 설정하려면 사용할 수 있습니다

bitsVariable |= 1 << myindex; 

비트를 지우려면, 당신은 사용할 수 있습니다

bitsVariable &= ~(1 << myIndex); 

비트를 확인하려면, 당신은 사용할 수 있습니다

if (bitsVariable & (1 << myIndex)) { 
    //Bit is set 
} else { 
    //Bit is not set 
} 
관련 문제