【发布时间】:2011-08-24 14:21:55
【问题描述】:
在下面的头文件中我声明了一些函数:
#ifndef _MY_INT_FUNCTIONS_H_
#define _MY_INT_FUNCTIONS_H_
int intFcn (const void *key, size_t table_size);
void intPrint (const void *key);
int intCompare (const void *key1, const void *key2);
#endif // _MY_INT_FUNCTIONS_H_
但我得到一个编译错误说:
“预期的声明说明符或‘size_t’之前的‘...’”
关于 int intFcn 函数。
我使用的是eclipse INDIGO版本。
帮助任何人?
【问题讨论】:
-
我认为你应该包含 stdlib.h
-
大多数 C 编译器发出的可怕且不恰当的错误消息的另一个示例。为什么编译器不直接说“无法识别的类型”?
-
@Blagovest Buyukliev :因为解析器的工作方式。解析器期望一些东西,但看到其他东西,所以它给出了一个错误说明。更好的错误消息通常意味着更复杂的解析器。鉴于 C++ 解析器已经相当复杂(由于 C++ 语法的性质),这是一项艰巨的任务。我同意有更好的错误消息会很有趣,但很难实现。
标签: c compiler-errors