C语言int大端转小端
时间: 2023-07-03 15:31:13 浏览: 295
大端小端模式
大端和小端是指在存储器中存储多字节数据(如int,long等)时,高位字节和低位字节的存储顺序不同。在大端模式下,高位字节存储在低地址,低位字节存储在高地址;而在小端模式下,高位字节存储在高地址,低位字节存储在低地址。
下面是C语言中int类型大端转小端的代码:
```c
#include <stdio.h>
int big_to_little(int x) {
int y = 0;
y |= (x & 0xff) << 24;
y |= (x & 0xff00) << 8;
y |= (x & 0xff0000) >> 8;
y |= (x & 0xff000000) >> 24;
return y;
}
int main() {
int x = 0x12345678;
printf("Before conversion: %x\n", x);
x = big_to_little(x);
printf("After conversion: %x\n", x);
return 0;
}
```
这个函数的原理是按照字节逐个提取大端存储的int值的每个字节,然后按照小端顺序组合成新的int值。
阅读全文