c语言 struct 占用内存理解

结论

  1. 当偏移地址不能整除类型时,成员变量偏移地址后移,直到能整除;
  2. 整个结构体的大小为对齐参数(所有类型中占用字节最大的那个,指针为4/8Bytes)的整数倍;
  3. 对齐参数为除去char的所有成员类型大小的最大公约数,成员全是char则为1。

对齐的目的是方便计算机编译器取值,加快数据处理速度。

举例

1

在这里插入图片描述
在这里插入图片描述
数组可以看成n个单独元素。

2

在这里插入图片描述
在这里插入图片描述

3 变量顺序不一样,结构体占用内存也不一致

在这里插入图片描述
在这里插入图片描述
对比
在这里插入图片描述
在这里插入图片描述

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值