【ARM 嵌入式 编译系列 11.1 -- GCC __attribute__((aligned(x)))详细介绍】
文章目录
- __attribute__((aligned(x)))详细介绍
- 其它对齐方式
上篇文章:ARM 嵌入式 编译系列 11 – GCC attribute((packed))详细介绍
attribute((aligned(x)))详细介绍
__attribute__((aligned(x)))
是 GCC 编译器的一个特性,它可以用于变量或类型,用来指定它们在内存中的对齐方式。
默认情况下,编译器会对数据按照特定的对齐原则进行对齐,以提高处理器对数据的访问效率。例如,一个 int
类型的变量在大多数系统上默认会按照 4
字节对齐。
使用 __attribute__((aligned(x)))
可以指定变量或类型的对齐方式,其中 x
是对齐的字节数,必须是 2
的幂次。编译器将保证变量或类型的地址是指定字节数的倍数。
以下是一个示例: