17.2节练习

练习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

看不明白啊。。。。。。。。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值