大端與小端
阿新 • • 發佈:2018-12-26
一.定義小端位元組序 資料的低位位元組序的內容放在低地址處;大端位元組序 資料的 低位位元組序的內容放在高地址處;比如一個數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. 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; }
假設從左到右為低位到高位則存取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; }
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; }