我想使用数据类型来表示3bits或12bits这样的大小..有谁能告诉我如何在c ++中实现它
并且是否有这样的代码,这可以帮助我定义位大小
int i:3;
提前感谢..
答案 0 :(得分:3)
你可以使用这样的结构
struct Date {
unsigned short nWeekDay : 3; // 0..7 (3 bits)
unsigned short nMonthDay : 5; // 0..31 (6 bits)
unsigned short nMonth : 4; // 0..12 (5 bits)
unsigned short nYear : 7; // 0..100 (8 bits)
};
答案 1 :(得分:1)
您可以使用vector<bool>
专精化课程
std::vector<bool> bits(3);
或者,提升dynamic_bitset
类
boost::dynamic_bitset<> bits(3);
http://www.boost.org/doc/libs/1_42_0/libs/dynamic_bitset/dynamic_bitset.html