判断系统是大端还是小端的两种方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了判断系统是大端还是小端的两种方法相关的知识,希望对你有一定的参考价值。
#include <iostream> #include <stdio.h> #include <malloc.h> #include <string.h> using namespace std; //判断系统是大端还是小端:通过将&int转换为char* int fun() { int num = 1; // *((char*)&num)获得num的最低字节,为0x00,说明是大端 为0x01,说明是小端 return *((char*)&num)?1:0; // 本机返回1:为大端 } //判断系统是大端还是小端:通过联合体,因为联合体的所有成员都从低地址开始存放 int fun1() { union test { int i; char c; }; test t; t.i = 1; //如果是大端,则t.c为0x00,则t.c!=1,返回0 是小端,则t.c为0x01,则t.c==1,返回1 return (t.c==1); } int main() { cout << fun() << endl; cout << fun1() << endl; }
以上是关于判断系统是大端还是小端的两种方法的主要内容,如果未能解决你的问题,请参考以下文章