一、前言
最近在准备考研的专业课中,遇到了C语言的联合体,在此总结一下。
二、简介
联合体union和结构体struct有一些相似之处,但两者本质上不同,在结构体中,各成员有各自的内存空间,一个结构变量的总长度是各成员长度之和。而在联合体中,各成员共享一段内存空间,一个联合变量的长度等于各成员中的最大长度。应该说明的是,这里所谓的共享不是指把多个成员同时装入一个联合变量内,而是指该联合变量可被赋予任一成员值,但每次只能赋一种值,赋入新值则冲去旧值。一个联合体类型必须经过定义才能使用它,才能把一个变量声明定义为该联合体类型。
三、定义
定义一个联合类型的一般形