C语言—联合体/共用体

  • Post author:
  • Post category:其他




联合体的定义

同一个内存空间存放类型不同,不同类型变量共享一块内存空间。

结构体和联合体的区别

1.结构体元素有各自单独的空间

联合体元素共享空间,空间大小由最大类型确定

2.结构体元素互不影响

联合体赋值会导致覆盖

联合体的定义:

union testU
{
   
	int a;
	int b;
	char c;
};

这里定义一个结构体,内容一样都是int a;int b; char c;

打印得到结构体和联合体的大小 + a.b.c三个变量的地址

在这里插入图片描述

这里就验证上面的定义。。。。。。。。。。。



联合体的应用

例题:有若干各人员的数据,其中包括学生和教师。

学生的数据包括:姓名、号码、性别、职业、班级。

教师的数据包括:姓名、号码、性别、职业、职务。

要求用同一个表格来处理。

这里只简单实现姓名和职业(班级)

#include <stdio.h>

struct Person
{
   
	char name[32];
	char zhiye;
	



版权声明:本文为m0_46269286原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。