當前位置:首頁 » 編程語言 » c語言位元組交換

c語言位元組交換

發布時間: 2023-06-15 19:56:38

c語言 對位元組的高位和低位進行互換!

可以直接用位運算:按位與,按位或,移位等

#include "stdio.h"
int main()
{
unsigned char tmp1,tmp2;

printf("please input a char: ");
scanf("%c", &tmp1);
tmp2=
((tmp1&0x01)<<7)
|((tmp1&0x02)<<5)
|((tmp1&0x04)<<3)
|((tmp1&0x08)<<1)
|((tmp1&0x10)>>1)
|((tmp1&0x20)>>3)
|((tmp1&0x40)>>5)
|((tmp1&0x80)>>7);
printf("converted char is: %c\n", tmp2);
return 0;
}

Ⅱ c語言實現2個位元組的高低位轉化

2個位元組short
int
高低位轉化:
short
int
y=0x7f21;
y
=
(
(y
&
0xff00)
>>
8)
|
(
(y
&
0x00ff
)
<<
8);
printf("%#x",y);
-------------------------------
也可以利用
union
union
B2
{
short
int
i;
unsigned
char
c[2];
//
。。。任意兩位元組類型
}
;
union
B2
x;
unsigned
char
tmp;
x.i=0x1234;
tmp
=
x.c[0];
x.c[0]=x.c[1];x.c[1]=tmp;
//
也可以用上面的位運算方法交換高低端
printf("%#x\n",x.i);
//
union
方法特別適合4位元組8位元組
大端小端碼的轉換操作。

熱點內容
硬碟屬於外部存儲器嗎 發布:2025-07-11 09:09:39 瀏覽:936
vs源碼查看 發布:2025-07-11 09:06:43 瀏覽:971
ip當前伺服器不可用是什麼意思 發布:2025-07-11 08:57:55 瀏覽:335
acfun如何緩存 發布:2025-07-11 08:48:12 瀏覽:3
我的世界伺服器tag 發布:2025-07-11 08:48:09 瀏覽:891
c語言設置 發布:2025-07-11 08:48:02 瀏覽:149
盒子伺服器名稱忘了怎麼找ip 發布:2025-07-11 08:40:00 瀏覽:984
研發部門如何配置電腦 發布:2025-07-11 08:35:13 瀏覽:135
androidassets文件路徑 發布:2025-07-11 08:28:46 瀏覽:165
安卓源碼如何變成ios 發布:2025-07-11 08:20:35 瀏覽:626