写个程序判断内存是大端模式还是小端模式

#include <iostream>
using namespace std;
typedef union node
{
	int a;
	char b[4];
};
int main()
{
	node u;
	u.a = 1;
	/*地址:  0x0000   0x0001  0x0002  0x0003
			  b[0]	   b[1]    b[2]     b[3]
	小端模式:0x01     0x00     0x00    0x00  所以b[0]==1
	大端模式: 0x00     0x00	    0x00    0x01  所以b[0]==0 b[3]==1
	*/
	if (1 == u.b[0])
		cout << "Little endian" << endl;
	else
		cout << "Big endian" << endl;
}

你可能感兴趣的:(写个程序判断内存是大端模式还是小端模式)