大端與小端

一.定義
小端字節序   數據的低位字節序的內容放在低地址處;
大端字節序 數據的 低位字節序的內容放在高地址處;
比如一個數1,他的二進制表示爲00 00 00 01
假設從左到右爲低位到高位則存取01   00  00   00 時則爲 小端字節序,00  00  00   01 時則爲 大端字節序
二.利用C語言判斷機器使用的大小端 
1.

int main()
{
 int a = 1;
 char *p = (char*)&a;
 if (*p == 1)
 printf("小端\n");
 else
 printf("大端\n");*/
 return 0;
}
2.
int check_sys()
{

 int a = 1;
// 如果是小端返回1
 //如果是大端返回0
 return *((char *)&a);
//或者可以分步如下
 //char*p=(char*)&a;
 //return *p;
}
int main()
{
 if (check_sys() == 1)
  printf("小端\n");
 else
  printf("大端\n");
 return 0;
}
3.
int check_sys() {  union Un//聯合體  {   int i;   char c;  }un;  un.i = 1;  return un.c;
} int main() {  if (check_sys() == 1)   printf("小端\n");  else   printf("大端\n");  return 0; }


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章