我是靠谱客的博主 丰富毛巾,这篇文章主要介绍联合体判断大端与小端,现在分享给大家,希望可以做个参考。

大端、小端

大端:数据的高字节存放在低地址处,数据的低字节存放在高地址处。
小端:数据的低字节存放在低地址处,数据的高字节存放在高地址处。

联合体

联合体开辟内存法规则是:选取联合体成员变量中,占用内存最大的内存大小,比如联合体内有int char ,float 类型变量,则开辟int型大小的空间。并且这些成员共用这一内存。

利用联合体特性,判断大小端

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
typedef union { int a; char b; }UN; int main(){ UN u; u.a = 1; if(u.b == 1) printf("小端存储n"); else printf("大端存储n"); return 0; }

分析:

复制代码
1
2
3
4
5
6
7
8
9
10
u.a = 0x00000001; 若小端存储形式: -------------------->地址减方向 00 00 00 01 则 b = 01; 若大端存储形式: -------------------->地址减方向 01 00 00 00 则 b = 0;

所以当u.b=1时为小端存储,u.b=0时为大端存储。

最后

以上就是丰富毛巾最近收集整理的关于联合体判断大端与小端的全部内容,更多相关联合体判断大端与小端内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(78)

评论列表共有 0 条评论

立即
投稿
返回
顶部