C中结构体类型与共用体类型变量的不同点是什么

如题所述

最大的区别是他们对内存的占用。结构体中的每个元素,都会按照数据类型的大小在内存中分配存储空间,结构体所占用的内存空间是其中所有元素所占用的内存空间的和,是一个固定的数值。共用体变量所占用的内存空间的大小是由所有元素中占用空间最大的元素决定的,他们共用这个空间。其次,结构体中的元素可以同时存在,而在共用体变量中,在某一时刻,只能有共用体中的一个变量存在。
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-12-06
结构体, 是一组数据的合集. 每个结构体成员拥有自己的独立内存.
共用体, 是一个数据, 可以被转为不同类型. 所有共用体成员共同占有相同区域.
所以,在不考虑对齐时, 结构体大小是所有成员占空间之和.
共用体大小是占空间最大的成员大小.本回答被网友采纳
相似回答