c语言 大端小端作用,C语言判断大端小端

#include 

#include 

int my_if(int a)

{

char* p =(char *) &a;

assert(p != NULL);   //断言函数(防止为空指针)

//直接返回值:

//1的截取为:01        (截取:char类型为1字节截取整形地址高地址)

//放于高地址则返回:00-0

//放于低地址则返回:01-1

return *p;

}

int main()

{

int a = 1;                                  //内存中 左边:低地址   右边 :高地址

int b=my_if(a);                            //1的内存存储为: 0x 00(高位) 00 00 01(低位)----->存储规则

if (0 == b)

{

printf("大端\n");                       // 数据低位放于存储高位,数据高位放于存储低位.   0x 00 00 00 01

}

else

{

printf("小端\n");                         //与之相反 : 0x 01 00 00 00

}

return 0;

}

精简版:(自定义函数中直接返回值)#include 

#include 

int my_if(int a)

{

return *(char*)&a;

//char* p =(char *) &a;

//assert(p != NULL);   //断言函数(防止为空指针)

直接返回值:

1的截取为:01        (截取:char类型为1字节截取整形地址高地址)

放于高地址则返回:00-0

放于低地址则返回:01-1

//return *p;

}

int main()

{

int a = 1;                                  //内存中 左边:低地址   右边 :高地址

int b=my_if(a);                            //1的内存存储为: 0x 00(高位) 00 00 01(低位)----->存储规则

if (0 == b)

{

printf("大端\n");                       // 数据低位放于存储高位,数据高位放于存储低位.   0x 00 00 00 01

}

else

{

printf("小端\n");                         //与之相反 : 0x 01 00 00 00

}

return 0;

}

标签:小端,00,01,int,0x,C语言,char,地址,大端

来源: https://blog.51cto.com/u_15144773/2712823

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值