位操作有两个数字,第一数字是5个字节(用byte数组保存), 第2个数字用16位的short保存取第一个数字里的某些位(一共取16位)看,对第二个数字赋值,如何做?比如我要去除第一个数字的1,2个bit位,对第二个数字的,第0,1位赋值,如何做? [解决办法]
b &= ~3;b [解决办法]= (a[0] >> 1) & 3;
Quote: 引用:unsigned char a[5];unsigned short b;...b = a[0] [解决办法] (a[1] << 8);不对额, 我说的是第一1个字节的第1位,第2位 ,取出这2位来赋值给 b的 第0为何第1位。
unsigned char a[5];unsigned short b;...b = a[0] [解决办法] (a[1] << 8);