關於bitset 的一段代碼--初級

#include
#include<iostream>
using namespace std;


int main()

{

//初始化16位bitvec1均爲1

bitset<16> bitvec1(0xffff);
cout<<bitvec1<<endl;

//初始化32位bitvec2,1-16位爲1,其它爲0
bitset<32> bitvec2(0xffff);
cout<<bitvec2<<endl;

//初始化32位bitvec3,賦string類型的值
string strval("1111111111");
bitset<32> bitvec3(strval);
cout<<bitvec3<<endl;

//初始化32位bitvec4,取從strval[5]開始後兩位的值,其它均爲0
bitset<32> bitvec4(strval,5,2);
cout<<bitvec4<<endl;

//初始化32位bitvec5,取strval後四位的值,其它均爲0
bitset<32> bitvec5(strval,strval.size()-4);
cout<<bitvec5<<endl;

//全部置0

bitvec1.reset();

cout<<"reset:"<<bitvec1<<endl;

//全部置1

bitvec1.set();
cout<<"set:"<<bitvec1<<endl;

//0位置0
bitvec1.set();
bitvec1.flip(0);
cout<<"flip(0):"<<bitvec1<<endl;

//2位置0
bitvec1.set();
bitvec1.flip(2);
cout<<"flip(2):"<<bitvec1<<endl;

//0位置0
bitvec1.set();
bitvec1[0].flip();
cout<<"bitvec[0]:"<<bitvec1<<endl;

//10位置0
bitvec1.set();
bitvec1[10].flip();
cout<<"bitvec1[10]:"<<bitvec1<<endl;

//全部置0
bitvec1.set();
bitvec1.flip();
cout<<"flip():"<<bitvec1<<endl;


return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章