您的位置 首页 硬件

arm c中字节对齐

__align__align关键字指示编译器在n字节边界上对齐变量。__align是一个存储类修饰符。它不影响函数的类型。语法__align(n)其中:n是对齐边…

__align

__align关键字指示编译器在n字节鸿沟上对齐变量。

__align是一个存储类修饰符。它不影响函数的类型。

语法

__align(n)

其间:

n

是对齐鸿沟。

关于局部变量,n值可为 1、2、4 或 8。

关于全局变量,n能够具有最大为 2 的 0x80000000 次幂的任何值。

__align关键字紧靠变量称号前面放置。

用法

假如声明的变量的惯例对齐鸿沟小于n,__align(n)对错常有用的。八字节对齐方法能够明显进步 VFP 指令的功能。

能够将__align与extern和static一同运用。

约束

因为__align是存储类修饰符,因而不能将其用于:

  • 类型,包含typedef和结构界说

  • 函数参数。

只能进行过对齐。也就是说,能够将两个字节的目标按 4 个字节对齐,而不能将 4 个字节的目标按两个字节对齐。

示例

__align(8) char buffer[128]; // buffer starts on eight-byte boundary
void foo(void){...__align(16) int i; // this alignment value is not permitted for // a local variable...}__align(16) int i; // permitted as a global variable.参阅:ARM手册

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qianrushi/yingjian/276672.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部