How to use bitset in C++

Tips/C++ Eng2018.02.28 16:49
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
#include <string>
#include <bitset>
 
using namespace std;
 
//bitset declare / 宣布bitset
bitset< 8 > bit;
//bit     [8]    (0,0,0,0, 0,0,0,0)  
 
//total bitset / 总bitset
bit.set();
//bit   [8] (1,1,1,1, 1,1,1,1) 
 
//reset bit / 复位bitset
bit.reset();
//bit   [8] (0,0,0,0, 0,0,0,0) 
 
//Allocated bits /分配 bits
int bitsize = (int)bit.size();
//bitsize  8
 
// 세트된 비트 존재 여부 검사 / 检查bitset
bool bAny = bit.any();
//bAny     false  bool
bool bNone = bit.none();
//bNone  true     bool

 
//1번째, 3번째 비트 할당 / 第1次,第3次分配
bit.set(0true);
//bit   [8](1,0,0,0,0,0,0,0)    
 
bit.set( 2true );
//bit    [8](1,0,1,0,0,0,0,0)    
 
//5번째 비트 반전 / 第五个反转
bit.flip( 4 );
//bit    [8](1,0,1,0,1,0,0,0)    
 
//모든 비트 반전 / 所有碎片都让
bit.flip();
//bit    [8](0,1,0,1,0,1,1,1)    std::bitset<8>
 
//네 번째 비트 검사 / 第4次 bit 检查
bool bFlag = bit.test( 3 );
//bFlag    true    bool
 
//여섯 번째 비트 검사 / 第6次 bit 检查
bFlag = bit[ 5 ];
//bFlag    true    bool
 
//세트 된 비트 존재 여부 검사 / 检查bitset
bAny = bit.any();
//bAny    true    bool
bNone = bit.none();
//bNone    false    bool
 
// 세트 된 비트 수 / 设定的 bit count
int setcount = (int)bit.count();
//setcount    5    int
 
//값 할당 / 价格分配
bit = 0x01;
//bit    [8](1,0,0,0,0,0,0,0)    std::bitset<8>
bit = 0xF0;
//bit    [8](0,0,0,0,1,1,1,1)    std::bitset<8>
 
// 문자로 변환 / 转换到了一封信
string strBits = bit.to_string();
//strBits    "11110000"
 
// 숫자로 변환 / 转换到数字
int    nBitVal = bit.to_ulong();
//nBitVal    240
 
 
 
 
 
// reference : http://neodreamer-dev.tistory.com/326
cs


'Tips > C++ Eng' 카테고리의 다른 글

How to use bitset in C++  (0) 2018.02.28
Constructor[생성자]  (0) 2015.11.28
Introducing Classes  (0) 2015.11.28
Storage classes and Scope  (0) 2015.11.23
Introducing the for Loop  (0) 2015.11.04
The Conditional (Ternary : 3중 조건문)  (0) 2015.11.04

작성자

Posted by 비타오백

관련 글

댓글 영역

티스토리 툴바