作者:烦了_12664 | 来源:互联网 | 2023-05-20 17:37
1> milleniumbug..:
您不能创建大小小于的整数char
(也就是说,每个对象的大小以字节为单位sizeof(char)
,即1 的倍数).但这不是问题,因为你可以在更大的数字内打包数字.
const unsigned size_in_bits = 3;
unsigned a = 1; // 001
unsigned b = 5; // 101
unsigned packed = (b <> size_in_bits*0) & ((1 <> size_in_bits*1) & ((1 <
或使用位域(语法更好,但二进制布局是实现定义的)
struct Date
{
unsigned day : 5;
unsigned month : 4;
unsigned year : 21;
};
Date d;
d.day = 5; d.mOnth= 11; d.year = 2014;