博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
字节对齐
阅读量:4549 次
发布时间:2019-06-08

本文共 416 字,大约阅读时间需要 1 分钟。

原因

各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类型的数据只能从某些特定地址开始存取。

不对齐可能会发生读取错误;或一次数据需要读取2次;

准则

1) 结构体变量的首地址能够被其最宽基本类型成员的大小所整除;
2) 结构体每个成员相对于结构体首地址的偏移量都是成员大小的整数倍,如有需要编译器会在成员之间加上填充字节;例如上面第二个结构体变量的地址空间。
3) 结构体的总大小为结构体最宽基本类型成员大小的整数倍,如有需要编译器会在最末一个成员之后加上填充字节。

一些概念

类型的对齐要求可以通过 _Alignof 获得。(C11 起)

 

alignof()

#pragma pack (value)

__attribute__((packed)) ;gcc中允不允许指定几个字节的对齐呢?

 

 

 

转载于:https://www.cnblogs.com/followthemaster/p/10442346.html

你可能感兴趣的文章
JQuery发送Ajax请求
查看>>
SQL 中的 case when
查看>>
【DeepLearning】GoogLeNet
查看>>
【手撸一个ORM】第六步、对象表达式解析和Select表达式解析
查看>>
MsDepSvc 启动失败
查看>>
总结十四
查看>>
泛型约束
查看>>
websocket入门
查看>>
AOP技术分析
查看>>
jdk keytools for spring-boot
查看>>
百度前端学习日记03——CSS选择器
查看>>
二维数组和二级指针
查看>>
HDOJ_就这么个烂题总是WA先放这把
查看>>
十大经典官场小说
查看>>
aws centos系统磁盘扩容
查看>>
stages
查看>>
!!!??? 2.3 核心模块与应用程序的对比
查看>>
jQuery介绍
查看>>
Embeded linux之gpio
查看>>
使用PG的部分索引
查看>>