c++ bitset使用方法

bitset使用方法

std::bitset 是C++中用于处理二进制位的标准库类,它允许你以一种直观的方式操作二进制位。

头文件

#include 

创建bitset对象

bitset<8> bits; // 创建一个包含8位的bitset,默认所有位为0
bitset<8> bits2(0b10101010); // 使用二进制字面值初始化bitset
bitset<16> bits3(0x55AA); // 使用十六进制字面值初始化bitset
bitset<32> bits4("11001100110011001100110011001100"); // 使用字符串初始化bitset

常用函数:

#include 
using namespace std;
#include "bitset"

void test01(){
    bitset<10> bits(13);
    // 获取二进制字符串表示
    cout << bits.to_string() << endl; // 0000001101

    // 使用下标运算符来访问和修改位(倒着的)
    bool b1 = bits[0];
    cout << b1 << endl; // 1
    bool b2 = bits[3];
    cout << b2 << endl; // 1
//    bits[0] = 0;
//    cout << bits.to_string() << endl; // 0000001100

    // 使用 size 函数获取位的数量
    cout << bits.size() << endl; // 10

    // 计算1的个数
    // 使用 count 函数计算二进制中1的个数
    cout << bits.count() << endl; // 3

    // 进行位运算
    bitset<8> bits1(0b10101010);
    std::bitset<8> bits2(0b11001100);

    bitset<8> resultAnd = bits1 & bits2; // 与运算
    bitset<8> resultOr = bits1 | bits2;  // 或运算
    bitset<8> resultXor = bits1 ^ bits2; // 异或运算
}

int main() {
    test01();
    return 0;
}

你可能感兴趣的:(c++,c++,开发语言)