1 / 3
文档名称:

TCP协议代码.doc

格式:doc   大小:35KB   页数:3页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

TCP协议代码.doc

上传人:乘风破浪 2018/10/15 文件大小:35 KB

下载得到文件列表

TCP协议代码.doc

相关文档

文档介绍

文档介绍:TCP ECHO
服务器端
// : 定义控制台应用程序的入口点。
#include ""
#ment(lib,"")
#include <>
#include <>
#include <>
#include <>
int _tmain(int argc, _TCHAR* argv[])
{WSAData wsaData;
int err = WSAStartup(WINSOCK_VERSION,&wsaData);
if(0!=err)
{return -1;}
SOCKET sock= socket(, SOCK_STREAM, 0);
if(INVALID_SOCKET==sock) {
printf("socket() Failed: %d\n",WSAGetLastError());
WSACleanup();return -1;}
sockaddr_in LocaAddr;
= ;
=htons(10000);
=htonl(INADDR_ANY);
err = bind(sock, (sockaddr *)&LocaAddr, sizeof(LocaAddr));
if(SOCKET_ERROR==err) {
printf("bind() Failed: %d\n",WSAGetLastError());
closesocket(sock);WSACleanup();return -1;}
err=listen(sock,5);
if(SOCKET_ERROR==err)
{printf("listen() Failed:%d\n", WSAGetLastError());
closesocket(sock);WSACleanup();return -1;}
sockaddr_in ClientAddr;
int AddrLen =sizeof(ClientAddr);
SOCKET sockConnected=accept(sock,(sockaddr*)
&ClientAddr,&AddrLen);
if(INVALID_SOCKET==sockConnected)
{printf("accpet() Failed:%d\n", WSAGetLastError());
closesocket(sock);WSACleanup();return -1;}
char rbuf[1024];
while(1)
{memset(rbuf,0,1024);
int rByte = recv(sockConnected,rbuf,1024,0);
if(SOCKET_ERROR==rByte) /*出错处理*/
{printf("recv Failed: %d\n",WSAGetLastError());
closesocket(sockConnected)