逻辑运算符'&'可以去特定位数的值。
#include <stdio.h>
//1111 0100 0010 0100 0000 //1000000
// 11 1111 1111 //0x3ff
int main()
{
int a = 1000000;
int b = a & 0x3ff;
printf("%d\n",b); //576
}
打印b是576,&0x3ff表示取1000000后十二位的二进制的值。因为0x3ff前面都是0,&的结果也都是0。