C语言 IAR中的奇怪错误EWARM " error [Pe147]: declaration is inco



我得到这个错误超出了我的知识:

Error[Pe147]: declaration is incompatible with "__interwork __softfp char *Get_Language_String(enum Lang_Index, enum String_Index)" (declared at line 26 of "E:FreescaleFreescale_MQX_4_0demo E:FreescaleFreescale_MQX_4_0demoDialogD13_Demo_v5Strings.c 79 

DialogD13_Demo_v5 Strings.h")

我在我的代码中有这个:

strings.h:
extern char *Get_Language_String(enum Lang_Index Lang_Ind, enum String_Index Str_Ind);
strings.c:
char *Get_Language_String(enum Lang_Index Lang_Ind, enum String_Index Str_Ind)
{
  return languages[Lang_Ind][Str_Ind];
}

怎么了

提前感谢,

问候,小羊。

感谢回复…

是定义的顺序导致了这个错误。

strings .h中的extern子句是在枚举定义之前…

问候,

Bulek .

最新更新