联合体Union

1.对比于结构体:

结构体struct 多个成员 每个成员都有自己的一块空间

联合体union 多个成员 所有成员会共用同一块空间

2.特点:

节省空间

3.求联合体的大小

联合体的大小是最大对齐数的整数倍,并且>=最大成员数

最大成员数是什么?

最大成员数:如果是 char i[5]; 则最大成员数是5

short a[3]; 则最大成员数是6

至于最大对齐数是什么,《结构体详解》那篇文章里面有讲过。

代码:

4.写一个代码用于判断是大端还是小端?

常规做法(1):

常规做法(2): 另一种写法

使用联合体来写这个代码(用到了联合体的多个成员会共用同一块空间这个特点):

代码写法:

相关推荐
RuoZoe2 天前
重塑WPF辉煌?基于DirectX 12的现代.NET UI框架Jalium
c语言
祈安_5 天前
C语言内存函数
c语言·后端
norlan_jame7 天前
C-PHY与D-PHY差异
c语言·开发语言
czy87874757 天前
除了结构体之外,C语言中还有哪些其他方式可以模拟C++的面向对象编程特性
c语言
m0_531237177 天前
C语言-数组练习进阶
c语言·开发语言·算法
Z9fish7 天前
sse哈工大C语言编程练习23
c语言·数据结构·算法
代码无bug抓狂人7 天前
C语言之单词方阵——深搜(很好的深搜例题)
c语言·开发语言·算法·深度优先
CodeJourney_J7 天前
从“Hello World“ 开始 C++
c语言·c++·学习
枫叶丹47 天前
【Qt开发】Qt界面优化(七)-> Qt样式表(QSS) 样式属性
c语言·开发语言·c++·qt
with-the-flow7 天前
从数学底层的底层原理来讲 random 的函数是怎么实现的
c语言·python·算法