在char元素中交换半字节

时间:2013-04-13 06:05:34

标签: c++ c

char元素中的半字节是什么?

我们如何交换它们?

任何人都可以用一个例子来解释小吃的交换:

3 个答案:

答案 0 :(得分:8)

半字节(或nybbles,类比字节vs bite)是char的4位块。

您可以将它们换成:

c = ((c & 0x0F) << 4) | ((c & 0xF0) >> 4);

答案 1 :(得分:2)

int x =  0xab; // 1010 1011 

int x1 = ( x & 0xF0) ; // 1010 0000
int x2 = ( x & 0x0F) ; // 0000 1011

x = ( x2 << 4 | x1 >> 4 ) ; // 1011 1010

答案 2 :(得分:1)

char temp1,temp2,z;// your o/p
temp1=((x & 0x0f)<<4);//x  be your input
temp2=((x & 0xf0)>>4);
z=temp1|temp2;