填空题
有以下定义和语句,则sizeof(a) 的值是{{U}} 【13】 {{/U}},而sizeof(a.share)的值是{{U}} 【14】 {{/U}}。
struct datc
{ int day;
int mouth;
int year:
union {int share1;
float share2:
}share;
}a;
【正确答案】
1、[13] 10
【答案解析】[14] 4
[评析] 结构体变量所占内存长度是各成员占的内存长度之和。每个成员分别占有其自己的内存单元。int占2个字节,float占4个字节,共用体变量所占的内存长度等于最长的成员的长度。所以,sizeof(a.share)的值是4,sizeof(A) 的值是 2+2+2+4=10。