int 是4个字节使用前一个bit 这个1就是 位置赋值 表示后面的值 放在 第一个bit 存储struct a {unsigned int d:2;};a aa;aa.d = 4;cout << aa.d; //输出0 因为我是用了2个bit 没办法存储4 溢出了 溢出后 剩余部分结果正好 是0