从 C 中的 uint16_t 获取最低字节
Get lowest bytes from an uint16_t in C
我想在 C 中获取 uint16_t
的最低字节。
示例:
20544 = 0x5040
0x40 = 64
我试过了,(X & ((1<<2) - 1))
。这对我不起作用。
您使用字节(复数),但是 uint16_t
由两个字节组成,所以我假设您指的是最低有效字节(单数)。如果是这样,这里有一种获取方式:
uint8_t lsb = ((uint8_t)(((uint32_t)(val)) & 0xFF))
我想在 C 中获取 uint16_t
的最低字节。
示例:
20544 = 0x5040
0x40 = 64
我试过了,(X & ((1<<2) - 1))
。这对我不起作用。
您使用字节(复数),但是 uint16_t
由两个字节组成,所以我假设您指的是最低有效字节(单数)。如果是这样,这里有一种获取方式:
uint8_t lsb = ((uint8_t)(((uint32_t)(val)) & 0xFF))