C语言实的串行通信接口程序(3)
作者:佚名; 更新时间:2014-12-05
listen(s,1)!=0) {
perror("listen()");
return;
}
/*accept a connection.*/
namelen=sizeof(client);
if ((ns = accept(s, (struct sockaddr *)&client,&namelen))==-1) {
perror("accept()");
return;
}
/*receive the message on the newly connected socket.*/
for (;;){
if ((pktlen = recv(ns, buf, 1024, 0))<0) {
perror("recv()");
break;
}
else if (pktlen==0) {
printf("recv():return failed,connection is shut down! ");
break;
}
else printf("recv():return success, packet length = %d ",pktlen);
sleep(1); /*sleep() 1秒钟是为了减慢数据交换速度*/
/*send the message back to the client.*/
if (send(ns, buf, pktlen, 0) <0) {
perror("send ()");
break;
}
else printf("send():return success, packet length = %d ",pktlen);
}
close(ns);
close(s);
printf("server ended successfully");
}
四、结束语
本文试图通过一个实例来说明如何使用winsock实现windows下网络实时通信。从上面的讨论可以看出,使用winsock编制windows下网络软件是比较方便的,winsock提供的异步选择机制使socket强大的网络编程功能能够在windows下得到应用。相信随着internet的推广,tcp/ip网络协议的广泛使用,使用winsock编制windows网络实时通信软件将会有一个大的发展。
perror("listen()");
return;
}
/*accept a connection.*/
namelen=sizeof(client);
if ((ns = accept(s, (struct sockaddr *)&client,&namelen))==-1) {
perror("accept()");
return;
}
/*receive the message on the newly connected socket.*/
for (;;){
if ((pktlen = recv(ns, buf, 1024, 0))<0) {
perror("recv()");
break;
}
else if (pktlen==0) {
printf("recv():return failed,connection is shut down! ");
break;
}
else printf("recv():return success, packet length = %d ",pktlen);
sleep(1); /*sleep() 1秒钟是为了减慢数据交换速度*/
/*send the message back to the client.*/
if (send(ns, buf, pktlen, 0) <0) {
perror("send ()");
break;
}
else printf("send():return success, packet length = %d ",pktlen);
}
close(ns);
close(s);
printf("server ended successfully");
}
四、结束语
本文试图通过一个实例来说明如何使用winsock实现windows下网络实时通信。从上面的讨论可以看出,使用winsock编制windows下网络软件是比较方便的,winsock提供的异步选择机制使socket强大的网络编程功能能够在windows下得到应用。相信随着internet的推广,tcp/ip网络协议的广泛使用,使用winsock编制windows网络实时通信软件将会有一个大的发展。
参考文献
1 martin hall等.windows sockets-an open interface for network programm ing under microsoft windows.winsock document, 1993(6).2 孙义等.unix环境下的网络程序设计.北京:希望公司,1991.3 梁振军等.新编tcp/ip协议与计算机网络互联技术.北京:希望公司,1992.
热门论文