问题 单项选择题

若有下面的说明和定义:
struct test
int m1;Char m2;float m3;
union uuchar u1[5];int u2[2];ua;
myaa;
则sizeof(struct test)的值是

A.12

B.16

C.14

D.9

答案

参考答案:A

解析:结构体所占用的存储空间是其所有成员占用的存储空间之和,而共用体所占用的存储空间是成员中占用存储空间最大者的空间,共用体类型uu是结构体的成员,它所占的内存长度为最大成员的长度,即字符型数组u1的长度,即1×5=5。每个整型数据占用2个字节,每个字符型数据占用一个字节,单精度型数据占4个字节,myaa为结构体变量,它所占的存储空间为各个成员所占存储空间的之和,即2+1+4+5=12。

选择题
单项选择题