列表

详情


假设以下代码运行环境为32位系统,其中,attribute((packed))的作用是告诉编译器取消结构在编译过程中的优化对齐,按照实际占用字节数进行对齐。
代码段1:


代码段2:

sizeof(struct student1)、sizeof(union student2)的结果分别是(  )。

A. 248和128

B. 31和31

C. 31和16

D. 16和16

参考答案: C

详细解析:

struct student1{
char name[10];-----10个字节
long sno; ------4个字节
char sex;------1个字节
float score[4];-----16个字节
}
sizeof(struct student1)结果为:10+4+1+16=31字节
sizeof(union student2)结果为:16字节

上一题