TI中文支持网
TI专业的中文技术问题搜集分享网站

求助:关于使用IAR编译器开发430过程struct对齐的问题

我现在定义一个变量

#pragma pack(4)

struct test

{

  U4 a;

  U1 b;

  U4 c;

}

#pragma pack()

通过debug看变量地址发现 &c = &b+2,而不是按4字节对齐。

进一步实验发现通过pragma只能实现1字节对齐,设置成4,8字节对齐仍然是按照两字节对齐。

这个是什么问题造成的?

灰小子:

这个和编译器有关系,你找一下iar for msp430编译器的说明文件

Triton Zhang:

因为MSP430是16位的处理器。如果你换成32位的处理器,这个定义就会是&C=&B+4;

赞(0)
未经允许不得转载:TI中文支持网 » 求助:关于使用IAR编译器开发430过程struct对齐的问题
分享到: 更多 (0)