C++标准库bitset类型(简单使用方法)
```cpp
#include<bister>
using std::bitset;
```
一句话定义:可自定义位数,用作记录二进制的数据类型.
一,定义和初始化
```cpp
bitset<n> b; //b有n位,每位都为0;
bitset<n> b(u); //b是unsigned long型u的副本
bitset<n> b(s); //b是string对象s中含有n位字符串的副本
bitset<n> b(s, pos, n); //b是s中从pos位置开始的n个位置的副本
bitset<n> b(s,pos); //b从s的pos位置开始取值到s末尾(注取的值从b的右端开始)
```
注:①n定义的位数在初始化时按初始值填充,赋值超出的范围舍去,空余的以零填充.
②bitset从string对象读入位集时按从右到左的顺序.
二,操作
```cpp
b.any(); //查找b是否存在1?
b.none(); //b中不存在1吗?
b.count(); //b中1的个数
b.size(); //b的位数
b[pos]; //访问b中pos处的数值
b.test(pos); //检测b中pos处是否为1
b.set(); //把b中所有位 置为1
b.set(pos); //把b中pos位置为1
b.reset(); //把b中所有位置为0
b.reset(pos); //把b中pos位置为0
b.flip(); //b中所有二进制位取反
b.flip(pos); //b中在pos处的二进制位取反
b.to_ulong; //返回一个同值得unsigned long值
os << b; //把b中位集输出
```
C++标准库bitset类型(简单使用方法)的更多相关文章
- 把《c++ primer》读薄(3-3 标准库bitset类型)
		督促读书,总结精华,提炼笔记,抛砖引玉,有不合适的地方,欢迎留言指正. //开头 #include <bitset> using std::bitset; 问题1.标准库bitset类型( ... 
- C++标准库string类型
		string类型支持长度可变的字符串,C++标准库将负责管理与存储字符相关的内存,以及提供各种有用的操作.标准库string类型的目的就是满足对字符串的一般应用. 本文地址:http://www.cn ... 
- C++标准库vector类型的使用和操作总结
		vector是一种类型对象的集合,它是一种顺序容器,容器中的所有对象必须都是同一种类型.想了解顺序容器的更多内容:C++顺序容器知识总结.vector的对象是可以动态生长的,这说明它在初始化时可以不用 ... 
- zt  C++标准库set类型
		C++标准库set类型 分类: C++编程语言 2012-11-06 10:53 909人阅读 评论(0) 收藏 举报 目录(?)[-] 在set中添加元素 从set中获取元素 set容器只是单纯的键 ... 
- 【C++ Primer每日刷】之三  标准库 string 类型
		标准库 string 类型 string 类型支持长度可变的字符串.C++ 标准库将负责管理与存储字符相关的内存,以及提供各种实用的操作.标准库string 类型的目的就是满足对字符串的一般应用. 与 ... 
- C++标准库 bitset
		本文地址:http://www.cnblogs.com/archimedes/p/cpp-bitset.html,转载请注明源地址. 有些程序要处理二进制位的有序集,每个位可能包含 0(关)1(开)值 ... 
- Python标准库映射类型与可散列数据类型的关系
		这里有两个概念似懂非懂,在这里明确一下: 映射类型: Python>3.2中,collections.abc模块有Mapping和MutableMapping两个抽象基类(Python2.6~3 ... 
- 把《c++ primer》读薄(3-1 标准库string类型初探)
		督促读书,总结精华,提炼笔记,抛砖引玉,有不合适的地方,欢迎留言指正. 问题1:养成一个好习惯,在头文件中只定义确实需要的东西 using namespace std; //建议需要什么再using声 ... 
- C++标准库string类型的使用和操作总结
		string是C++标准库最重要的类型之一,string支持长度可变的字符串,其包含在string头文件中.本文摘自<C++PRIMER 第四版·特别版>和个人的一些总结. 一.声明和初始 ... 
随机推荐
- srand()和rand()函数的使用
			rand()函数不接受参数,默认以1为种子(即起始值). 随机数生成器总是以相同的种子开始,所以形成的伪随机数列也相同,失去了随机意义.(但这样便于程序调试) srand()函数就是指明种子的大小:只 ... 
- 高可用Redis服务架构分析与搭建
			基于内存的Redis应该是目前各种web开发业务中最为常用的key-value数据库了,我们经常在业务中用其存储用户登陆态(Session存储),加速一些热数据的查询(相比较mysql而言,速度有数量 ... 
- hiveql笔记(一)
			1.创建表 create table if not exists mydb.employees{ name String COMMENT 'Employee name', salary FLOAT C ... 
- spark集成hbase与hive数据转换与代码练习
			帮一个朋友写个样例,顺便练手啦~一直在做平台的各种事,但是代码后续还要精进啊... import java.util.Date import org.apache.hadoop.hbase.HBase ... 
- GO开发:接口
			接口 接口定义 Interface类型可以定义一组方法,但是这些不需要实现.并且interface不能包含任何变量. type example interface{ Method1(参数列表) 返回值 ... 
- shell实现go环境的部署搭建
			##############################Deploy go enviroment######################## echo "start deploy g ... 
- css实现隐藏多余溢出文字并显示省略号
			<meta charset="utf-8" /> <style> .txt{ width:200px; border:1px solid #ddd; ove ... 
- 十年磨一剑  Delphi重新崛起再写传奇
			新年伊始,英巴卡迪诺公司(Embarcadero)就在其官网发布了"激动人心的RAD Studio2018年发展规划"公告(见上图).公告中指出,将在于2018年第一季度发布10. ... 
- CEF小白人系列2-DEV环境配置-Windows10+SDK+VS2015
			以下资料整理来自CEF官方教学.作者做了翻译和整理.并会以一种重事件操作的方式来一点点入门. 3个问题: 在上一篇内容中我们了解了什么是CEF,能干些什么.必要的物理学习环境. 下面我们也是以带着问题 ... 
- C/C++语言简介之发展历史
			C语言之所以命名为C,是因为 C语言源自Ken Thompson发明的B语言,而 B语言则源自BCPL语言. 1967年,剑桥大学的Martin Richards对CPL语言进行了简化,于是产生了BC ... 
