ANSI C 中字符的位操作



谁能告诉我一个用C语言用二进制表达字符的好方法? 我需要将给定字符视为 1 和 0 的序列。 例如,如果我作为输入'a',我希望将其视为01100001并最终返回00010110(具有倒置半字节的字节(。 使用unigned char好吗?我应该使用 8 元素的整数数组来存储字节吗?

int main(void){
unsigned char c = 'a';
return 0;
}
一个

带有倒置半字节的字节

由于您似乎不关心 8 位以外的字符,因此您可以执行c = c<<4|c>>4.

最新更新