首页 > 其他 > 详细

struct和union区别

时间:2018-11-23 18:10:45      阅读:161      评论:0      收藏:0      [点我收藏+]

主要区别有以下几点:

 

1、在存储多个成员信息时,编译器会自动非是投入出题人每个成员分配存储空间,struct可以存储多个成员变量信息;而union每个成员会共用同一个存储空间,且只能存储最后一个成员的信息;

 

2、都是由多个不同的数据类型成员组成,但在任何同一时刻,union值存放了一个被先选中的成员,而结构体struct的所有成员都存在;

 

3、对于union的不同成员赋值,将会对其他成员重写,原来的成员值就不存在了,而对struct的不同成员赋值是互不影响的;

 

4、系统分配给union的内存size就是size最大的成员所需空间大小,struct在分配空间时,根据成员类型不同,会存在字节对齐情况,具体对齐标准和机器有关,可能是4字节或8字节等对齐方式。

struct和union区别

原文:https://www.cnblogs.com/kevin-lb/p/10008887.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!