3

我正在用 C 编程。我收到以下错误:

ctc E208: ["..\..\ECB\Include\ecb.h" 4/11] syntax error - token ";"
inserted before "u8_vTeethBeforeMissingTeeth1"

这是我在 .h 文件中的内容:

#ifndef __ECB_H__
#define __ECB_H__

extern u8 u8_vTeethBeforeMissingTeeth1;
extern u8 u8_vTeethBeforeMissingTeeth2;

#endif /* __ECB_H__ */

谁能告诉我这部分代码中我缺少什么?

4

2 回答 2

6

问题是您的标题不是独立的。它依赖于u8此处未定义的类型“ ”(并且未在您之前包含的任何其他标头中定义)。u8在声明“缺失的牙齿”变量之前,您应该在“ecb.h”标题中包含定义“ ”的标题。

标题应该是独立的;如果您需要标头的服务,您应该能够将其包含在内,而不必担心还需要包含什么。标准 C 标头为您执行此操作 - 您应该使用自己的标头为您自己执行此操作。

于 2010-10-20T05:54:43.950 回答
0

这是我的猜测。你有#define u8,这个定义是错误的。它包含额外的;某处。

于 2010-10-20T05:56:46.063 回答