C++ 字节对齐

字节对齐

内存字节对齐机制,就是为了最大限度的减少内存读取次数。我们知道CPU读取速度
比内存读取速度快至少一个数量级,所以为了节省运算花费时间,只能以牺牲空间来
换取时间了。

pragma pack(n)

#pragma pack(n) 指定编译器的对齐参数数
用法:
#pragma pack(n)
#pragma pack()
另外:
#pragma pack(push) //保存当前对齐状态
#pragma pack(push,4) //保存当前对齐状态,并设定为4字节对齐
#pragma pack(pop) //恢复对齐状态

对齐规则:

每个成员按其类型的对齐参数(通常是这个类型的大小)和指定对齐参数(中较小的一个对齐。结构的长度必须为所用过的所有对齐参数的整数倍

对于结构来说,它的对齐方式就是它的所有成员使用的对齐参数中最大的一个。

结构体或者类的自身对齐值:其成员中自身对齐值最大的那个值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值