例如将int a放到高24位,int b放到低8位组合成一个新的数,可以用以下的方式
int a = 50;
int b = 4;
int c = ((a << 8) & 0xFFFFFF00) | (b & 0x000000FF);
std::cout << c << std::endl;
需要注意的是:低位数不能超过256。
解析方式如下:
int c = 12866;
int b = c & 0x000000FF;
int a = (c >> 8) & 0x00FFFFFF;