问题
单项选择题
给定C语言的数据结构
struct T
int w;
union Tchar c; int I; double d; )U;
;
假设char类型变量的存储区大小是1字节,int类型变量的存储区大小是4字节, double类型变量的存储区大小是8字节,则在不考虑字对齐方式的情况下,为存储一个 struct T类型变量所需要的存储区域至少应为()字节。
A.4
B.8
C.12
D.17
答案
参考答案:C
解析:
union T定义T为一个共用体,它所占用的存储空间的大小是它所包含的元素中占用存储空间最多的那个,即d的存储空间8字节,int w要占用存储空间4字节,所以存储一个struct T类型变量所需要的存储区域至少应为4+8=12字节。