错误LNK2019:函数___tmainCRTStartup错误中引用了未解析的外部符号_main

时间:2014-07-07 21:25:38

标签: c++ sdl lnk2019

我在C ++中使用SDL并且我一直收到错误:

    error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup

我该怎么做才能解决这个问题?这是我的来源:

#include <SDL.h>
int main(int argc, char *argv[]){
    SDL_Init(SDL_INIT_VIDEO);
    SDL_Window* Window = NULL;
    Window = SDL_CreateWindow("Render Window",0,0,1000,1000, SDL_WINDOW_SHOWN || SDL_WINDOW_FULLSCREEN);
    return 0;
}

我的链接器和编译器看起来很好,我在子系统等中包含了控制台。但是只有在我添加时才会出现错误:

#include <SDL.h>

1 个答案:

答案 0 :(得分:8)

我认为&#34; SDL.h&#34;内部包含&#34; SDL_main.h&#34;,其中包含一个奇怪的#define

#define main SDL_main

这几乎肯定搞砸了你自己的main

尝试在包含&#34; SDL.h&#34;之后添加#undef main,例如:

#include <SDL.h>
#undef main

由于您说您已将SubSystem更改为Console,这应该就是您所需要的。

有关详细信息,请参阅this question