天天看点

C语言--小端模式和大端模式

一、概念:

    大端(存储)模式:是指一个数据的低位字节的内容存放在高地址处,高位字节的内容存放在低地址处。

    小端(存储)模式:是指一个数据的低位字节的内容存放在低地址处,高位字节的内容存放在高地址处。

二、代码

#include<stdio.h>

typedef union{
	int value;
	char buf[4];
}Test;

int
main(int argc, char *argv[])
{
	Test test_value;

	char i = 0;
    test_value.value = 0x11223344;

    for (i = 0; i < 4; i++)
	    printf("%x ",test_value.buf[i]);


	return 0;
}
/**平台:Windows7 + CodeBlocks(小端模式)
 * 程序输出结果:
 ***************************
 * 44 33 22 11
 ***************************
 */
           

三、分析:

    联合变量test_value在内存中的位置是:

                    □        □      □      □

内存地址    1        2       3      4(假定地址是从1开始的)

int               44      33      22     11

char            buf[0]  buf[]  buf[2]  buf[3]

继续阅读