ADS编译程序出错!!!
请教斑竹,再调试有关UCOS+d12的程序时,总有如下错误:Error : C2225W: declaration lacks type/storage-class (assuming 'int'): 'f'
Main.c line 37
Error : C2285E: expected ';' or ',' - inserted ';' before 'OS_STK'
Main.c line 37
程序错误行为:
extern EPPFLAGS bEPPflags;(在该行报错!!)
extern OS_STKTaskSetupStk;
其中EPPFLAGS是定义的USB事件标志,结构如下:
typedef union _epp_flags
{
struct _flags
{
unsignedremote_wakeup : 1;
unsignedcontrol_state : 2;
unsignedconfiguration : 1;
unsignedcommand : 1;
} bits;
INT16U value;
} EPPFLAGS;
查看ADS帮助文件如下解释:
C2225W: declaration lacks type/storage-class (assuming 'int')
For C++ only, the -Ei option downgrades from error to warning the use of implicit int in constructs
such as const i;.
但是,实际是报错的请问该如何解决啊? 我编译了一下,似乎没问题啊,我的测试如下:
typedef union _epp_flags
{
struct _flags
{
unsigned remote_wakeup : 1;
unsigned control_state : 2;
unsigned configuration : 1;
unsigned command : 1;
} bits;
int value;
} EPPFLAGS;
int main( void )
{
EPPFLAGSbEPPflags;
bEPPflags.value = 1;
return 1;
}
我直接 armcctest.c ,没有报错,你可以试试。 :-D:-D
谢谢斑竹了,问题已经解决了,原因是在其他文件中的一个 extern关键字用错了!
谢谢了!
希望以后能多多交流! 解决就好解决就好, :lol:
页:
[1]