我的c程序出错

时间:2013-07-18 16:00:16

标签: c embedded

我正在尝试使用C18编译器为pic18f4550编译程序。我在这一行有一个语法错误:

typedef struct __attribute__ ((packed)) _USB_DEVICE_DESCRIPTOR

感谢任何建议

1 个答案:

答案 0 :(得分:5)

__attribute__ ((packed))是GNU扩展,不是C,C18中没有此语法。

请注意,关于结构填充,C18编译器documentation表示:

  

ANSI C标准:“结构成员的填充和对齐(6.5.2.1)。”

     

实现:结构和联合的成员在字节边界上对齐。

所以不需要通过编译器扩展来打包结构成员。