c语言怎么把一个十六位数据拆成两个八位,怎么把两个八位数据合成十六位,能举例说明吗

2024-12-18 15:56:10
推荐回答(4个)
回答1:

比如将十六进制数“2A12”拆成"2A"和"12",然
后再把"2A"和"12"对调位置合成"122A"
#include
main()
{
int a=0x2a12;
char b,c;
b=a>>8;
c=a&0x0ff;
printf("%x,%x",b,c);
a=(c<<8)|b;
printf("\n%x",a);
return 0;
}

回答2:

unsigned short a = 0xA4F5;
unsigned char b = (a & 0xFF00)>>8;
unsigned char c = a & 0x00FF;
unsigned short d = (b<<8) | c;

回答3:

可以用>> 和<<
运算符

回答4:

你先给个例子,什么样的16位数据,什么样的8位数据?