【发布时间】:2011-10-03 18:10:52
【问题描述】:
我有两个源文件:
源文件 1 (assembler.c):
#include "parser.c"
int main() {
parse_file("test.txt");
return 0;
}
源文件 2 (parser.c):
void parse_file(char *config_file);
void parse_file(char *src_file) {
// Function here
}
由于某种原因,编译时出现以下错误:
duplicate symbol _parse_file in ./parser.o and ./assembler.o for architecture x86_64
为什么它给了我一个重复的 parse_file 符号?我只是在这里调用函数...不是吗?
【问题讨论】:
-
C 中没有类......只是一个挑剔的问题:你的措辞。
-
那么当你在“吹毛求疵”时,为什么不建议使用“模块”、“源文件”或“翻译单元”这些术语呢?
标签: c function duplicate-symbol