C语言----共用体
- 软件开发
 - 2025-09-07 14:36:02
 

共用体: union //联合--共用体
早期的时候,计算机的硬件资源有限, 能不能让多个成员变量 公用同一块空间
使用方式 类似 结构体 --- 也是构造类型
struct 结构体名 { 成员变量名 };
union 共用体名 { 成员变量名 }; //表示构造了一个共用体类型
//定义变量 //定义指针 //定义数组 //做函数形参 //做函数返回值类型
注意: 1.共用体类型的大小 = 最大的成员的大小 2.共用体初始化,只能写一个值,这个值是给第一个成员变量的值 3.共用体成员的访问方式 和 结构体一样 4.共用体因为公用同一块空间 赋值时,后赋值的会影响前面赋值的结果
5.用途 a.节省空间 校园人员管理系统 struct student { char name[20]; int sno; float score; }; struct teacher { char name[20]; int tno; float salary; }; struct member { char name[20]; int no; union { float salary; float score; }data; }; struct member s; printf("score = %f\n",s.data.score); struct member t; printf("score = %f\n",s.data.salary);
b.数据转换 192.168.0.59 //ip地址 --- 网络环境中 ---实际对应是一个32位的数值 #include <stdio.h> union Ip { unsigned char ip[4]; unsigned int iip; };
int main(int argc, const char *argv[]) { union Ip d = {192,168,0,59}; printf("ip = %#x\n",d.iip); return 0; }
C语言----共用体由讯客互联软件开发栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“C语言----共用体”