结构体和共用体有什么区别?

简答题
2024-11-08 12:13:28
推荐回答(3个)
回答(1):

共用体是构造数据类型,也叫联合体
它使几个不同类型的变量共占一段内存(相互覆盖),每次只有一个能使用.
结构体则不然,
每个成员都会有存储空间的,可以一起用.

回答(2):

结构体里面的每一个元素都占有一定的内存空间。而共用体占用其元素中最长的变量的那个类型的内存空间。其赋值是覆盖式的,比如:
union data {int a; long b; char c; }d,e,f;

……

d.a=1;
d.b=10000000000;
d.c='s';

那么只有d.c是有效的,其余的都没有意义啦。

回答(3):

占用内存空间计算方法不同