unsigned char reverse(unsigned char c) {
int shift;
unsigned char result = 0;
for (shift = 0; shift < CHAR_BITS; shift++) {
if (c & (0x01 << shift))
result |= (0x80 >> shift);
}
return result;
}
我正在使用的书籍没有讨论这些类型的值,所以我不太确定如何处理它们。有人能解释一下这个解决方案吗?谢谢!
CHAR_BITS
不是标准定义,而是在<limits.h>
中定义的CHAR_BIT
。 - Jonathan Leffler