C-将一个字节的三位与一个字节组合

C-将一个字节的三位与一个字节组合,c,byte,bit,C,Byte,Bit,假设这个字节是二进制的:f=01010111,那么我会这样做:f这个怎么样 uint8_t f = 0x57; // 0b01010111 f <<= 3; // now 10111000 uint8_t g = 0xB9; // 0b10111001 uint16_t out = (f << 5) | g; printf("0x%04X\n", out); > 0x17B9 // 0b1011110111001 uint8\

假设这个字节是二进制的:f=01010111,那么我会这样做:f这个怎么样

uint8_t f = 0x57; // 0b01010111
f <<= 3;          // now 10111000
uint8_t g = 0xB9; // 0b10111001
uint16_t out = (f << 5) | g;
printf("0x%04X\n", out);

> 0x17B9          // 0b1011110111001
uint8\u t f=0x57;//0b01010111

你能用16位数字吗?你也应该看看一些按位的教程,有很多关于这个主题的资料。我看过很多,但我发现所有的教程都很基本,我收到的是一个文本(文本有数字、字符等),然后我把它改成二进制,这样做,所以最后我认为会有一个很长的010101链。。。。。我正在加密文本。我是一个“noobie”的字节使用,所以我不知道我是否可以做到这一点哈哈哈。