如何判断一个板子的cpu 是big-endian 还是 Little-endian的?

int main(void)
{
      short int a = 0x1234;
      char *p = (char *)&a;
      printf('p=%#hhx\\n',*p);
      if(*p == 0x34)
          printf('Little endian \\n');
      else if(*p == 0x12)
          printf('Big endian \\n');
      else
          printf('Unknow endian \\n');
      return 0;
}

 

 

#include <stdio.h>
int main()
{
  union x
{
  int a; 
  char b;
} c;
  c.a=1;
  if (c.b==1)
  printf("It is Little_endian!\n");
  else
  printf("It is Big_endian!\n");
  return 0;
}

posted @ 2011-06-14 21:10  一万零一时  阅读(318)  评论(0编辑  收藏  举报