问题 单项选择题

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

A.12

B.16

C.14

D.9

答案

参考答案:A

解析: 结构体变量所占的存储空间是各个分量所占空间的总和。共用体变量中的所有成员占有同一个存储空间,其字节数与成员中占字节数最多的那个成员相等。char u1[5]是有5个元素的字符数组占5个字节,int u2[2]是有2个元素的整型数组占2*2=4个字节,共用体占5个字节的存储空间。int占2个字节,char占1个字节,float占4个字节,因此结构体所占的存储空间为2+1+4+5=12个字节。

多项选择题
单项选择题