C语言将一个字节逆序

原来一个字节0x36,二进制数据为:0011 0110,现要将其转换为0110 1100,代码如下:
</pre><pre name="code" class="cpp">#include <stdio.h>

int main(void)
{
	unsigned char src = 0x36;
	unsigned char des = 0;
	unsigned char tmp = 0;
	int i=0;
	for(;i<8;i++)
	{
		
		if(src & 0x1)
		des |= 1 << (7-i);
		else
		des &= ~(1 << (7-i));
		
		src >>= 1;
	}
	printf("0x%x\n",des);
}


你可能感兴趣的:(C语言将一个字节逆序)