C++ 链接器错误:未定义对“函数”的引用,'WinMain@16C
我有一个项目的一部分,其中我有一些定义函数的代码文件,一些头文件,然后是一个用于测试的.c文件,其中包含主文件。特别是,我将这些文件都放在同一个文件夹.c和.h中: “骰子”、“游戏”、“地图”、“玩家”。还有“测试”,只有最后一个。在所有的.h文件中,开头都有相同类型的声明,这来自“game.h”:C++ 链接器错误:未定义对“函数”的引用,'WinMain@16C,c++,c,header,linker-errors,stdio,C++,C,Header,Linker Errors,Stdio,我有一个项目的一部分,其中我有一些定义函数的代码文件,一些头文件,然后是一个用于测试的.c文件,其中包含主文件。特别是,我将这些文件都放在同一个文件夹.c和.h中: “骰子”、“游戏”、“地图”、“玩家”。还有“测试”,只有最后一个。在所有的.h文件中,开头都有相同类型的声明,这来自“game.h”: #ifndef GAME_H #define GAME_H #include "dice.h" #include "map.h" #include "players.h" //then th
#ifndef GAME_H
#define GAME_H
#include "dice.h"
#include "map.h"
#include "players.h"
//then there goes the short declaration of the functions in game.c
#endif
stdio.h也添加到.c文件中
我的问题是,我总是遇到这样的错误:[Linker error]:对于类似2或3个函数,未定义对“调用函数”的引用,以及[Linker error]:未定义对“函数”的引用WinMain@16'. Id返回1退出状态。我唯一能解决的问题是“WinMain@16在main之前添加“void”时出错,但我以前从未需要过它。事实上,在项目的早期版本中,这些都没有发生
我已经检查了我的拼写,检查了区分大小写的能力,修改了参数,检查了函数是否写在正确的地方,并且多次测试了很多其他东西,但是没有任何效果
有人能帮我吗?任何想法、解释或任何事情都将不胜感激
提前谢谢你
PD:主要功能:
main(){
int i;
char opt = 'a';
t_players pl;
t_map map;
initialize_seed();
initialize_players(&pl);
initialize_regions(&map, &pl);
while(opt != 'n' && opt != 'N'){
print_map(map, pl);
scanf("%c", &opt);
//still to complete
}
}
你使用什么IDE,你使用mingw编译器吗?您是否添加了任何库来链接到您的项目?您应该在main之前使用int not void。另外,您的错误表明您没有链接到所有的.c/.cpp文件。您好,感谢您的快速响应!至于我使用的IDE,它是wxDevC++。除了stdio,我没有其他图书馆。关于int,我一直都没有这样做,这是第一次。不管怎样,我现在就试试。好的,即使使用int main,错误仍然存在。关于链接文件,你是什么意思?对不起,如果这是基本的,我是一个乞丐分割文件。难道不足以让a.c和.h同名吗?再次感谢!文件名在那里并不重要。。。您必须在dev cpp项目中添加所有的.c文件,并且每个c文件都必须知道使用头的其他.c文件中的函数,但是您的问题在于链接。。。与标题无关