永发信息网

为什么下面这个结构体s所占的字节数是8,然而如果把a和b的位置交换一下,所占的字节数就变成12了?

答案:2  悬赏:40  手机版
解决时间 2021-03-18 07:00
为什么下面这个结构体s所占的字节数是8,然而如果把a和b的位置交换一下,所占的字节数就变成12了?vc6.0中:
struct s
{
int a;
char b;
short c
}
最佳答案
原因是:字节对齐。32位系统是4字节对齐。字节对齐之后,机器的硬件访问地址的速度会得到极大提高,所以,一般系统都会做字节对齐。

正常情况下,int占用4字节,char占用1字节,short占用2字节。
实际中,
struct s {
int a;
char b;
short c;
};

而a、b换位置后,
struct s {
char b;
int a;
short c;
};
全部回答
我。。知。。道 加。。我。。私。。聊
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
被巨蟒吞掉是什么感觉?能看见什么?好玩吗?
CrossFitLongMarch混合体能训练中心在哪里啊
电动车电池能否修复,怎么辨别翻新的电池
京东快递是24小时派送货物的么?广东深圳到上
求深崎暮人本子打包度盘
德奈福(塔桥路)地址在什么地方,想过去办事
CL2和NaOH溶液反应的化学方程式是?
男的88年龙年生,今年本命年能不能佩戴招财貔
求看门狗下载地址,最好是迅雷可以下载的。谢
临沂地区怎么行三奠九叩
重庆大学软件工程2014年考研复试
与儿街路/霍山大道(路口)地址在哪,我要去那
14岁的智商100是什么水平
省技能竞赛一等奖能不能直接读二本
2014中文男人唱的歌,最近很红 。 …爱情,说
推荐资讯
请问大家: 才扯了结婚证什么时候可以扯离婚
西湖的绿给人什么印象?
八里庙村村地址在哪,我要去那里办事
天一·大众人家在什么地方啊,我要过去处理事
绵阳至呼伦贝尔机票和火车票
吃台湾枸杞叶会让血压升高吗?
抛光水钻胶粉都含什么成分
我的蠢萌老公杨康的妈妈
猪肚煮老了怎么办
冬季适合播种的蔬菜和水果
求HP中四巨头的文章
玛丽艳汗蒸美容养生会所怎么去啊,有知道地址
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?