结构和联合的区别
2008-12-25 10:29
148 查看
1,union共享内存单元所以按占用内存最大的那个成员变量分配内存,
class、struct要考虑对齐(即将内存小的那个成员补齐到和内存单元最大的那个)
占用内存计算方式要视情况而定
C/C++ code
2,对联合中一个的更新会影响到其他成员而结构数据成员拥有独立内存所以不会有影响
class、struct要考虑对齐(即将内存小的那个成员补齐到和内存单元最大的那个)
占用内存计算方式要视情况而定
C/C++ code
union u { char c; int i; } sizeof(u) = 4 struct s0 { int i; char c; } sizeof(s0) = 8; struct s1 { int i; char c1; char c2; } sizeof(s1) = 8 struct s2 { int i; char c1; char c2; char c3; char c4; char c5; } sizeof(s2) = 12 struct s3 { double d; char c; } sizeof(s3) = 16
2,对联合中一个的更新会影响到其他成员而结构数据成员拥有独立内存所以不会有影响
相关文章推荐
- 结构和联合的区别
- 结构和联合的区别
- 结构和联合的区别
- 联合与结构的区别
- 结构与联合有和区别?
- 结构与联合有和区别?
- 结构与联合有和区别?
- 结构和联合的区别
- 结构与联合的区别、应用
- 结构和联合的区别
- 结构和联合的区别
- 结构与联合有和区别
- 结构与联合有何区别?
- 从ip addr add和ifconfig的区别看linux网卡ip地址的结构
- 了解向方法传递结构和向方法传递类引用之间的区别(C# 编程指南)
- 介绍Collection框架的结构;Collection 和 Collections的区别
- C语言中的结构和联合详解
- VB.Net中结构和类的区别
- SQL内链接,外连接,交叉连接,联合连接区别详解
- C#中结构与类的区别