Error[e46]: Undefined external “TabCCRCont” referred in app_mode

IAR出现如题的Error,找了好久都没有找到问题。已经在头文件里用extern 声明了该变量。

最后发现,原来是变量定义时加了static关键字,竟然没注意。晕。昨天下班前找了差不多半小时,今天上班来2分钟发现问题。

在app_mode.c 的头文件里做了如下声明

extern const u16 TabCRCCont[];

在另外一个C文件中定义了如下:

static const u16 TabCRCCont[] = {   66,  164,  328, 2621, 6554,
6881,10486,16348,32767,45548,
65535};

显然static变量是不能被外部文件调用的,所以出现如题的报错。粗心大意啊

发表评论

电子邮件地址不会被公开。 必填项已用*标注