zoukankan      html  css  js  c++  java
  • c++ bitset 操作

    #include "stdafx.h"
    #include <iostream>
    #include <bitset>
    using namespace std;

    int _tmain(int argc, _TCHAR* argv[])
    {
    bitset<32> bitvec(8);
    bool flag = bitvec.any();//判断是否存在某位或者多位为1,有则返回true
    bool flag1 = bitvec.none();//判断是否所有的位都是0,是则返回true
    bool flag2 = bitvec.test(3);//测试第4位是否为1,是则返回true
    cout<<"第4位为:"<<bitvec[3]<<endl;//输出第4位的值
    bitvec.reset(3);//将第4位设置为0,或者bitvec[3] = 0
    cout<<"第4位为:"<<bitvec[3]<<endl;//输出第4位的值
    bitvec.reset();//将所有位设置为0
    cout<<"bitvec的值为:"<<bitvec.to_string()<<endl;
    bitvec.set();//将所有位设置为1
    cout<<"bitvec的值为:"<<bitvec.to_string()<<endl;
    bitvec = 8;
    cout<<"bitvec的值为:"<<bitvec.to_string()<<endl;
    bitvec.flip();//将所有的位翻转
    cout<<"bitvec的值为:"<<bitvec.to_string()<<endl;
    bitvec.flip(0);//翻转第一位
    cout<<"bitvec的值为:"<<bitvec.to_string()<<endl;
    bitvec = 0xffff;//设置低16位为1
    cout<<"bitvec的值为:"<<bitvec.to_string()<<endl;
    bitvec = 012;//用八进制值012设置bitvec
    cout<<"bitvec的值为:"<<bitvec.to_string()<<endl;
    string bit = "1011";
    bitset<32> bitvec1(bit);//用字符串对象初始化bitset<32>对象
    cout<<"bitvec1的值为:"<<bitvec1.to_string()<<endl;
    string bit1 = "1111110101100011010101";
    bitset<32> bitvec2(bit1,6);//用 从第6位开始到字符串结束 这一部分 初始化bitvec2
    cout<<"bitvec2的值为:"<<bitvec2.to_string()<<endl;
    bitset<32> bitvec3(bit1,6,4);//用 从第6位开始,长度为4 这一部分 初始化bitvec3;
    cout<<"bitvec3的值为:"<<bitvec3.to_string()<<endl;
    }
  • 相关阅读:
    dayjs:js时间插件
    IE:IE请求路径带中文报错
    layui:下载表格为excel文件
    VUE:导出表格为excel文件
    报错:unexpected trailing comma
    node.js报错address not available 192.168.1.4
    js防抖和节流
    mongodb的常用基础命令及操作
    mongodb下载安装及环境搭建
    vue页面缓存
  • 原文地址:https://www.cnblogs.com/handongdong/p/2223753.html
Copyright © 2011-2022 走看看