- 论坛徽章:
- 0
|
回复 #8 zengg82 的帖子
my_addr.sin_family = AF_INET;
my_addr.sin_port = htons(nPortNumberOut);
my_addr.sin_addr.s_addr = inet_addr("127.0.0.1" ;
bzero(&(my_addr.sin_zero), ;
//创建套接字
if((listensocket = socket(AF_INET, SOCK_STREAM, 0)) == -1)
{
PrintError("创建套接字失败,结束通信!" ;
return 0;
}
else
{
PrintError("创建套接字成功!" ;
}
//绑定套接字
if(bind(listensocket, (struct sockaddr *)&my_addr, sizeof(struct sockaddr)) == -1)
{
PrintError("绑定失败,结束通信!" ;
return 0;
}
else
{
PrintError("绑定套接字成功!" ;
}
//监听
if(listen(listensocket, 100) == -1)
{
PrintError("监听失败,结束通信!" ;
return 0;
}
else
{
PrintError("监听成功!" ;
}
for(i = 0; i < nClientNumber; i++)
{
sin_size = sizeof(struct sockaddr_in);
//socket进程监听连接请求
PrintError("等待连接!" ;
if((newsocket = accept(listensocket, (struct sockaddr *)&their_addr, &sin_size)) == -1)
{
char szError[8];
sprintf(szError,"%d",errno);
PrintError(szError);
char *a = strerror(errno);
PrintError(a);
PrintError("本次连接失败,继续其他连接!" ;
}
else
{
//数据处理
}
} |
|