在以下情形中,展示了如何将 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
函数,来让我们无需手动处理字节序转换逻辑,即可完成大小端的转换。最后,我们使用循环来打印转换后的数组元素,以验证转换结果。