为了账号安全,请及时绑定邮箱和手机立即绑定

c++ 结构体大小

c++ 结构体大小

收到一只叮咚 2019-04-19 16:12:46
#includeusingnamespacestd;intmain(){struct{charfirstname[25];charmi;charlastname[25];intscore;}A;cout
查看完整描述

2 回答

?
月关宝盒

TA贡献1772条经验 获得超5个赞

一个变量的地址必须是其自身长度的整数倍。
firstname,mi和lastname都是char类型,一共占用51个字节,即偏移地址为0~50;
接下来是一个int,int是4字节,其偏移地址必须为4的整数倍,所以偏移地址为52~55(52是第一个大于50的能被4整除的数字);
至于中间的第51这个字节,就是俗称的padding,是个浪费掉的填充字节;
所以整个结构体占用的地址为0~55,共56个字节
                            
查看完整回答
反对 回复 2019-04-19
  • 2 回答
  • 0 关注
  • 380 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信