// 函数用于实现 int 变量的大小端转换
int swap_endian(int value) {
// 提取最高字节并右移 24 位
int byte1 = (value >> 24) & 0xff;
// 提取次高字节并右移 8 位
int byte2 = (value >> 8) & 0xff00;
// 提取次低字节并左移 8 位
int byte3 = (value << 8) & 0xff0000;
// 提取最低字节并左移 24 位
int byte4 = (value << 24) & 0xff000000;
// 将四个字节重新组合
return byte1 | byte2 | byte3 | byte4;
}
int main()
{
int num = 0x12345678;
int swapped_num = swap_endian(num);
printf("Original number: 0x%x\n", num);
printf("Swapped number: 0x%x\n", swapped_num);
}

02-22
1989
1989
10-16
500
500

被折叠的 条评论
为什么被折叠?



