我正在使用gcc-arm-none-eabi在手臂皮质cpu上编程C.我知道它是由测试和谷歌4字节对齐。
但是有没有定义多少字节对齐的宏或变量?我需要知道,以防有一天这个程序可能是另一个CPU的端口。
答案 0 :(得分:2)
找到特定数据类型对齐的技巧是将其打包在带有char:
的结构中#define LONG_ALIGNMENT (sizeof (struct {char a, long b}) - sizeof (long))
#define INT_ALIGNMENT (sizeof (struct {char a, int b}) - sizeof (int))