21 lines
536 B
C++
Executable File
21 lines
536 B
C++
Executable File
#include <iostream>
|
|
|
|
// 函数用于检测字节序
|
|
bool isBigEndian() {
|
|
// 定义一个 16 位整数,值为 1
|
|
uint16_t num = 0x0001;
|
|
// 获取该整数的第一个字节的地址
|
|
uint8_t* ptr = reinterpret_cast<uint8_t*>(&num);
|
|
// 大端字节序下,第一个字节是 0
|
|
return *ptr == 0;
|
|
}
|
|
|
|
int main() {
|
|
if (isBigEndian()) {
|
|
std::cout << "当前系统是大端字节序。" << std::endl;
|
|
} else {
|
|
std::cout << "当前系统是小端字节序。" << std::endl;
|
|
}
|
|
return 0;
|
|
}
|