目的:验证系统的大小端
#include<stdio.h>
int main(int argc,char **argv)
{
unsigned int a=0X12345678;
/* 指针是加4个字节*/
printf("%p %p\n",&a,&a+1);
unsigned char *p = (char *)&a;//强制类型转换,int * 至 char *
/* 指针加1个字节*/
printf("%p %p\n",p,p+1);
/* 十六进制输出,验证大小端系统*/
printf("%x %x %x %x\n",p[0],p[1],p[2],p[3]);
return 0;
}
输出结果如下:
ps: 大端,数据低字节存在内存高位,高字节存在内存底位;
小端,数据低字节存在内存底位,高字节存在内存高位;