找回密码
 立即注册
搜索
热搜: 活动 通知
查看: 69|回复: 0

第10章习题

[复制链接]

620

主题

336

回帖

1057

积分

管理员

积分
1057
发表于 2026-3-8 21:59:38 | 显示全部楼层 |阅读模式
第10章习题

1.给定以下声明:
struct t {int i; char c; short s;};
若int类型的大小是4,对齐是4;short类型的大小是2,对齐是2;该结构类型的大小和对齐是多少?会有填充吗?为什么?
答:该结果的大小是8,对齐为4,在成员c之后有1个字节的填充。原因:成员s需要对齐于2,只有在成员c之后添加1字节填充才能实现。

2.在源文件c1010.c中,结构struct shape_info的成员type是枚举类型,但实际上不用枚举类型也是可以的,例如,改为字符数组并保存形状的名字(可直接输入形状的名字并保存到这个成员里)。请采用此方案并修改这个程序。和采用枚举的方案相比,使用字符串的优点和缺点是什么?
答案从略。

3.源文件c1010.c中,结构shape_info的最后一个成员是联合。请依照图10-3的样子画出这个联合的内存布局。




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|鼠侠网 ( 吉ICP备19001332号 )

GMT+8, 2026-3-30 16:12 , Processed in 0.479787 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表