基本WinSock编程问题
在《Windows网络编程》第一章TCP/IP服务器程序中,有如下代码:
#include <winsock2.h>
void main(void)
{
WSADATA wsaData;
SOCKET ListeningSocket,NewConnection;
SOCKADDR_IN ServerAddr,ClientAddr;
int Port=5150;
WSAStartup(MAKEWORD(2,2),&wsaData);
ListeningSocket=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
ServerAddr.sin_family=AF_INET;
ServerAddr.sin_port=htons(Port);
ServerAddr.sin_addr.s_addr=htonl(INADDR_ANY);
bind(ListeningSocket,(SOCKADDR*)&ServerAddr,sizeof(ServerAddr));
listen(ListeningSocket,5);
int ClientAddrLen;
NewConnection=accept(ListeningSocket,(SOCKADDR*)&ClientAddr,&ClientAddrLen);
closesocket(NewConnection);
closesocket(ListeningSocket);
WSACleanup();
}
按说如无客户机连接请求时,程序运行到accept()时应该被阻塞,然而我在调试时,程序却并不阻塞,而是直接往下运行,并在运行到main()函数尾部时弹出对话框提示“please enter the path for CRTO.C”,请问这是怎么回事?