0

任何人都可以解释一下我们会在哪些情况下得到这些错误?

我有以下代码,lint 显示以下错误:

#ifdef SIC_CSI_NET
short CsiNetInit(void);
#endif

错误:

“重新声明的符号‘CsiNetInit(void)’(精度)与第 21 行冲突

第 21 行没有任何内容,我可以看到用于注释的 **。

4

2 回答 2

2

可能,在处理这些行的编译单元之一中,SIC_CSI_NET没有定义,与引发此警告的文件相反,但使用了该函数。在这种情况下,Lint 根本看不到原型,带来了不同的警告(可能是 718“未声明的符号 'CsiNetInit',假定返回 int”),并假定为原型int CsiNetInit(void);

当它看到实际的原型时,区别就很明显了:intvs short.。

于 2012-11-29T13:58:48.517 回答
0

查看 ; 的实际CsiNetInit()定义 也许它的原型指定了不同的返回类型short

于 2012-05-04T14:14:02.347 回答