我有一个名为helper.h
的头文件需要包含在main1.c
和main2.c
中,所以我在两个文件中都包含了helper.h
文件(没有包含我收到错误)但我仍然得到helper.h
中的函数已经定义的错误。如何使用#ifndef摆脱这个错误?
答案 0 :(得分:3)
这表示你已经在标题中定义了一个函数,即实现了它。你不能这样做,你应该只有声明,即 prototypes 。
添加一个实现这些功能的新C文件helper.c
。
然后编译每个C文件并将它们链接在一起(main1.o
+ helper.o
和main2.o
+ helper.o
)以形成两个程序。
答案 1 :(得分:1)
在helper.h文件中,在开始时添加以下行
#ifndef HELPER_H
#define HELPER_H
我希望这可以解决你的问题。