Socket网络编程链接失败问题,
我编了一个Client端的简单程序,用套接字进行链接,为什么我每次连接都失败?
程序代码如下:
bool ConnectToHost()
{
//Start up Winsock…
WSADATA wsadata;
int error = WSAStartup(0x0202, &wsadata);
if (error)
{
return false;
}
//Did we get the right Winsock version?
if (wsadata.wVersion != 0x0202)
{
WSACleanup(); //Clean up Winsock
return false;
}
//Fill out the information needed to initialize a socket…
SOCKADDR_IN target; //Socket address information
target.sin_family = AF_INET; // address family Internet
target.sin_port = htons (27015); //Port to connect on
target.sin_addr.s_addr = inet_addr ( "127.0.0.1 " ); //Target IP
socktHdl = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP); //Create socket
if (socktHdl == INVALID_SOCKET)
{
return false; //Couldn 't create the socket
}
//Try connecting...
if (connect(socktHdl, (SOCKADDR *)&target, sizeof(target)) == SOCKET_ERROR)
{
cout < < "could not connect " < <endl;
return false; //Couldn 't connect
}
else
{
cout < < "connected successfully! " < <endl;
return true; //Success
}
}
每次输出都是could not connect. 用的是局域网,本机物理地址为192.168.0.88。
请高手们分析一下原因。
[解决办法]
即使本机也应该设置成你自己的真实ip,而不应该是这个回环ip
[解决办法]
不需要一致,关键是server端listen得什么端口