我一直收到这些错误:
error LNK2005: _main already defined in main.obj
error LNK2019: unresolved external symbol _SDL_main referenced in function _main_utf8
error LNK1120: 1 unresolved externals
构建此
时#include <stdio.h>
#include <SDL.h>
int main(int argc, const char* argv[]){
printf("Hi\n");
return 0;
}
我在Visual Studio 2013中设置了目录和链接器,但我无法弄清楚出了什么问题。我正在使用32位SDL运行时库。我也是C ++的新手。
答案 0 :(得分:2)
在主要功能之前,定义
#define SDL_MAIN_HANDLED
这会阻止SDL&#34;服务&#34;为您解析命令行(仅在Windows上)。虽然这是一个修复,但这对跨平台程序来说并不好。另一个解决方法是更改main,使其看起来像这样:
int main(int argc, char* argv[])
你必须这样做是因为SDL_Main.h中定义的主宏会强制你拥有它,否则它会给你带来的错误。