-2
我正在用gcc-arm-none-eabi编写C语言的arm cortex cpu。我知道这是由测试和谷歌4字节对齐。手臂有多少个字节对齐?
但是,有没有任何宏或变量,它定义了它有多少字节对齐?我需要知道的情况下,有一天这个程序可能是另一个CPU的端口。
我正在用gcc-arm-none-eabi编写C语言的arm cortex cpu。我知道这是由测试和谷歌4字节对齐。手臂有多少个字节对齐?
但是,有没有任何宏或变量,它定义了它有多少字节对齐?我需要知道的情况下,有一天这个程序可能是另一个CPU的端口。
甲特技找到特定数据类型的取向是与一个char包装它在一个结构:
#define LONG_ALIGNMENT (sizeof (struct {char a, long b}) - sizeof (long))
#define INT_ALIGNMENT (sizeof (struct {char a, int b}) - sizeof (int))
看一看[的#pragma包(N)](HTTPS:// GCC .gnu.org/onlinedocs/gcc-4.8.4/gcc/Structure-Packing-Pragmas.html) – LPs
没有单一对齐方式。不同的数据类型有不同的对齐方式。 – EOF
对齐与可移植性没有多大关系。 – user3528438