acai039033 发表于 2013-4-17 17:58:35

ICC 和 GCC中结构体对齐的问题

以前用KEIL编译51的程序吃过结构体内存对齐的大亏,
现在写AVR 用ICC 和WINAVR 不知道这两个编译器 默认的对齐系数是多少在哪里可以修改?
这两个编译器对齐规则是不是一样的,有没有人指点一二。

monkerman 发表于 2013-4-17 18:48:49

GCC默认对齐是 4, 修改的话可以使用下面:#pragma   pack(2/4/8/16)

struct dd {
   ........
} __attribute__ ((aligned(2/4/8/16)));其他的不知道, 你还是看编译器手册. 里面肯定有详细描述.

monkerman 发表于 2013-4-17 18:51:25

对了. 要注意看编译器的版本, 不同的版本支持的方法不一样.

acai039033 发表于 2013-4-18 09:40:25

多谢二楼
页: [1]
查看完整版本: ICC 和 GCC中结构体对齐的问题