编写一个C程序,实现32位CPU中存储方式小端字节序和大端字节序的判别。
ONE:
#include<stdio.h>
#define LBS 0
#define MBS 1
{
int main(int)
{
int a=0x12345678;
char *p;
p = (char *)&a;
if(*p == 0x12)
{
return MBS;
}
/* if(*p == 0x78)
{
return LBS;
}
*/
}
SECOND:用联合的方法,小端返回1,大端返回0:
int cpu()
{
union bb
{
short a;
char b;
}c;
c.a = 0x1234;
return( c.b == 0x34);
}