大小端判断(两种方法实现)

bool isBig1()
{
	int a = 1;
	char *p = (char*)&a;
	if(*p == 1)
	{
		return false;//小端
	}
	else
	{
		return true;//大端
	}
}
bool isBig2()
{
	union Demo
	{
		char ch;
		short sh;
	}demo;

	demo.sh = 0x0001;//小端:0x0100    大端:0x0001

	if(demo.ch == 0x01)
	{
		return false;//小端
	}
	else
	{
		return true;//大端
	}
}
int main()
{
    if(!isBig2())
	{
		printf("Is little\n");
	}
	else
	{
		printf("Is big\n");
	}
	return 0;
}

 

你可能感兴趣的:(大小端判断(两种方法实现))