C语言大端小端判断的一种方法

大小端对应于内存中的数据存储方式。

大端:高地址存低位,低地址存高位。

小端:高地址存高位,低地址存低位。

 

#include <stdlib.h>

int main()
{
int a=0x12345678;

char *p=(char *)&a;
printf("%x\t",*p);
printf("%x\t",*(p+1));
printf("%x\t",*(p+2));
printf("%x\t",*(p+3));

return(0);
}

 

定义一个整型变量用来存储0x12345678,然后定义一个字符型的指针变量p,使用类型转换指向这个整型。因为字符型指向的是8位,所以*p的值打印出来是8位的。直接给指针p+3,就可以得到最高地址存储的值(应该是连续存储的),为0x12。所以这个是小端模式。

posted @ 2024-05-20 10:20  十五分钟  阅读(10)  评论(0编辑  收藏  举报