练习17.9 解释下列每个bitset对象所包含的位模式:
#include <iostream>
#include <string>
#include <bitset>
using namespace std;
int main()
{
bitset<64> bitvec(32); //10进制32
cout << bitvec << endl;
bitset<32> bv(011); // 8进制 011
cout << bv << endl;
string bstr;
cin >> bstr;
bitset<8> bvec(bstr);
cout << bvec << endl;
}
练习17.10 使用序列1、2、3、5、8、13、21初始化一个bitset,将这些位置置位。对另一个bitset进行默认初始化,并编写一小段程序将其恰当的位置位。
#include <iostream>
#include <bitset>
using namespace std;
int main()
{
bitset<32> quizA("1000000010000100101110");
bitset<32> quizB;
quizB.set(1);
quizB.set(2);
quizB.set(3);
quizB.set(5);
quizB.set(8);
quizB.set(13);
quizB.set(21);
cout << quizA << endl;
cout << quizB << endl;
}
练习17.11 定义一个数据结构,包含一个整型对象,记录一个包含10个问题的真/假测验的解答。如果测验包含100道题,你需要对数据结构做什么改变(如果需要的话)?
#include <iostream>
#include <bitset>
using namespace std;
template<unsigned N>
bitset<N> initial_bit()
{
bitset<N> x;
return x;
}
int main()
{
auto bitvec1 = initial_bit<10>();
auto bitvec2 = initial_bit<100>();
cout << bitvec1 << endl;
cout << bitvec2 << endl;
}
练习17.12&&17.13
看不明白啊。。。。。。。。。。。