在以下情形中,展示了如何将
short int
数组从大端序转换为小端序,或者从小端序转换为大端序。
1 #include <iostream>
2 #include <cstdint>
3 int main()
4 {
5 constexpr int size = 4;
6 std::uint16_t arr[size] = {0x1234, 0x5678, 0x9abc, 0xdef0};
7 // 大端序转换为小端序
8 for (int i = 0; i < size; ++i)
9 arr[i] = qbswap(arr[i]);
10 // 小端序转换为大端序
11 for (int i = 0; i < size; ++i)
12 arr[i] = qbswap(arr[i]);
13 for (int i = 0; i < size; ++i)
14 std::cout << std::hex << arr[i] << ' ';
15 return 0;
16 }
在上述代码中,我们使用了 Qt 的 qbswap
函数,来让我们无需手动处理字节序转换逻辑,即可完成大小端的转换。最后,我们使用循环来打印转换后的数组元素,以验证转换结果。