《C语言深度剖析》:大小端模式判断

大小端模式介绍:

例如:int a = 1;

a 的值为1,其中变量a占4个字节. 用16进制表示为0x00000001 四个字节 (16进制,2位表示一个字节)

如果是小端模式则内存存储方式如下:

低地址

01
00
00
00
高地址


如果是大端模式则内存存储方式如下:

低地址

00
00
00
01
高地址


总结:小端模式的高位字节(注意:0x00000001 其中00是高位字节)放在高地址。大端模式的高位字节存放到低地址。


《C语言深度剖析》中判断机器大小端模式的代码如下:

int CheckSystem()
{
    union check
    {
        int i;
        char ch;
    }c;
    c.i = 1;

    return (c.ch == 1);
}

int main(void)
{
    printf("%d\n",CheckSystem());
    
    return 0;
}


程序如果输出1,表示为小端模式。

如果输出0,表示为大端模式。

微笑





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