联合体Union

1.对比于结构体:

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

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

2.特点:

节省空间

3.求联合体的大小

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

最大成员数是什么?

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

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

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

代码:

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

常规做法(1):

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

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

代码写法:

相关推荐
网域小星球3 小时前
C语言从0入门(八)|函数基础:封装、调用与参数传递精讲
c语言·开发语言
网域小星球3 小时前
C语言从0入门(十)|二维数组详解与矩阵实战
c语言·算法·矩阵·二维数组·数组遍历
网域小星球3 小时前
C 语言从 0 入门(十五)|综合小项目:菜单交互与简易功能实现
c语言·开发语言·交互
网域小星球4 小时前
C 语言从 0 入门(十六)|动态内存管理:malloc /free/calloc /realloc 精讲
c语言·开发语言·free·malloc·动态内存
chh5634 小时前
C++--内存管理
java·c语言·c++·windows·学习·面试
Proxy_ZZ04 小时前
打造自己的信道编码工具箱——Turbo、LDPC、极化码三合一
c语言·算法·信息与通信
无限进步_4 小时前
【C++】重载、重写和重定义的区别详解
c语言·开发语言·c++·ide·windows·git·github
她说彩礼65万5 小时前
C语言 整形提升及算数转换
linux·服务器·c语言
Severus_black6 小时前
C实现双向链表和相关函数!巨详细!
c语言·数据结构·链表·list
菠萝地亚狂想曲7 小时前
FreeRTOS heap4
c语言·stm32·嵌入式开发