由于同一内存单元在同一个时刻只能存放其中一种类型的成员,即同一时刻只有一个成员有意义。因此,在同一时刻起作用的成员就是最后一次被赋值的成员。正因如此,不能为共用体的所有成员同时进行初始化,只能对第一个成员进行初始化
采用共用体存储程序中逻辑相关但情况互斥的变量时,使其共享内存空间的好处是除了可以节省内存空间以外,还可以避免因操作失误而引起逻辑上的冲突。
代码展示(部分):
#include<stdio.h>
struct date
{
int year;
int month;
int day;
};
struct marriedstate
{
struct date marryday;
char spousename[20];
int child;