C++ 표준 라이브러리는 비트 플래그 조작을 돕는 std::bitset을 제공한다.
std::bitset을 사용하려면 필요한 비트 수를 나타내는 std::bitset 변수를 정의해야 한다.
#include <bitset>
std::bitset<8>bits(0x3);
std::bitset 변수 bits는 0000 0011 이 된다.
std::bitset은 4가지 주요 함수를 제공하는데
1. test() : 비트 상태를 알려준다.
2. set() : 비트를 켠다.
3. reset() : 비트를 끈다.
4. flip() : 비트를 뒤집는다.
위 함수들을 활용한 코드가 다음과 같다.
#include <bitset>
#include <iostream>
using namespace std;
int main(){
bitset<8>bits(0x03) // 0000 0011
bits.set(4); // 0001 0011
bits.flip(5); // 0011 0011
bits.reset(5); // 0001 0011
cout << bits.test(4) << endl;
// 출력: 1
cout << bits << endl;
// 출력: 0001 0011
}
'C++' 카테고리의 다른 글
[C++] 배열 초기화 함수 : fill(), memset(), {0, } (0) | 2024.02.02 |
---|---|
[C++] string 클래스의 멤버함수 : c_str() (0) | 2024.02.02 |
[C++] cmath (0) | 2024.01.17 |
[C++] 심볼릭 상수 (Symbolic Constant) (0) | 2024.01.16 |
[C++] escape sequences (0) | 2024.01.16 |