计算机的存储分为了大端模式(big-endian)和小端模式(little-endian),那么究竟什么是大端模式什么是小端模式呢?二者有什么区别,如何判断一个存储系统是大端模式还是小端模式呢?这里我自己总结了两种方法来判断一个系统存储是大端模式还是小端模式:
大端模式是:高位存储低地址,低位存储高地址;
小端模式是:高位存储高地址,低位存储低地址;
1)、void func()
{
int i = 0x12345678;
char ch = (char ) i;
if(0x12 == ch)
printf("This system is big-endian!\n");
else
printf("This system is little-endian\n");
}
2)、void func()
{
union
{
int i;
char ch;
}c;
c.i = 1;
if(1 == c.ch)
printf("This system is little-endian!\n");
else
printf("This system is big-endian!\n");
}