'SDL_main':必须返回一个值

fer*_*aco 0 c++ sdl visual-studio

我试图在c ++ usind SDL中检索websice的内容,但它给了我这个错误:

'SDL_main':必须返回一个值

我的代码是:

#include <iostream>
#include "SDL.h"
#include "SDL_net.h"
#include <cstring>

int main(int argc,char** argv)
{
    SDL_Init(SDL_INIT_EVERYTHING);
    SDLNet_Init();

    IPaddress ip;
    SDLNet_ResolveHost(&ip,"www.linux.org",80);

    const char* http="GET / HTTP/1.1\nHost: www.linux.org\n\n";

    TCPsocket client=SDLNet_TCP_Open(&ip);

    SDLNet_TCP_Send(client,http,strlen(http)+1);

    char text[10000];

    while(SDLNet_TCP_Recv(client,text,10000))
        std::cout << text;

    SDLNet_TCP_Close(client);

    SDLNet_Quit();
    SDL_Quit();
}
Run Code Online (Sandbox Code Playgroud)

当我把回归0; 最后,它建立了项目,但在那之后立即完成(我正在使用vs2012)

UPDATE

cout<<"Some message";
Run Code Online (Sandbox Code Playgroud)

没有打印任何东西,我有可能配置我的导入错误吗?那些额外的依赖是对的吗?

SDL.lib; SDL_net.lib; SDLmain.lib

我不知道还有什么可能是错的......

Jos*_*eld 5

这是因为SDL定义了这样一个宏:

#define main SDL_main
Run Code Online (Sandbox Code Playgroud)

所以你编写的函数实际上是被调用的SDL_main,就像任何其他不是实际main函数的函数一样,如果它不返回void,你必须给它一个return语句.