网站大量收购独家精品文档,联系QQ:2885784924

socket编程c代码.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
socket编程c代码

下面是个socket编程的例子——客户端可发送字符到服务端,服务端负责显示客户端发送过来的字符。 客户端: #include Winsock2.h #include stdio.h #pragma comment(lib,WS2_32.LIB) #define Port 3578 #define MaxSize 1024 void main() { ??? WORD wVersionRequested; ??? WSADATA wsaData; ??? int err; ??? wVersionRequested=MAKEWORD(2,2); ??? err=WSAStartup(wVersionRequested,wsaData); ??? if (err!=0) ??? { ??????? printf(WinSock DLL版本不足要求n); ??????? return; ?? ?} ?? ?if (LOBYTE(wsaData.wVersion)!=2|| ?? ?HIBYTE(wsaData.wVersion)!=2) ???{ ?????? WSACleanup(); ????? ?return; ??? } ??? //创建套接字 ??? SOCKET sockClient=socket(AF_INET,SOCK_STREAM,0); ??? SOCKADDR_IN addrSrv; ??? addrSrv.sin_addr.S_un.S_addr=inet_addr();//把U_LONG的主机字节顺序转换为TCP/IP网络字节顺序 ??? addrSrv.sin_family=AF_INET; ?? ?addrSrv.sin_port=htons(Port); ??? //向服务器发送请求 ??? if(connect(sockClient,(SOCKADDR*)addrSrv,sizeof(SOCKADDR)) == -1) ??? { ??????? printf(连接失败!输入回车结束程序!n); ??????? getchar(); ??????? return; ??? } ??? //接受数据 ?? ?char recBuf[MaxSize]; ??? recv(sockClient,recBuf,MaxSize,0); ??? printf(%sn,recBuf); ??? //输入name ?? ?printf(Input your Name:n); ??? char name[20] = {0}; ??? gets(name); ??? //发送数据 ??? send(sockClient,name,strlen(name)+1,0); ??? while(1) ??? { ??????? gets(recBuf); ?????? ?send(sockClient,recBuf,strlen(recBuf)+1,0); ??? } ??? //关闭套接字 ??? closesocket(sockClient); ??? getchar(); ??? WSACleanup(); } ? ? 服务器端: #include Winsock2.h #include stdio.h #pragma comment(lib,WS2_32.LIB) #define Port 3578 #define MaxSize 1024 void main() { ??? //加载套接字 ??? WORD wVersionRequested; ??? WSADATA wsaData; ??? int err; ??? wVersionRequested=MAKEWORD(2,2); ??? err = WSAStartup(wVersionRequested,wsaData); ??? if (err!=0) ??? { ??????? printf(WinSock DLL版本不足要求n); ??????? return; ??? } ??? if (LOBYTE(wsaData.wVersion)!=2|| ??? HIBYTE(wsaData.wVersion)!=2) ??? { ???????? WSACleanup(); ???????? return; ???? } ???? //创建监听的套接字 ???? SOCKET sockSrv=socket(AF_INET,SOCK_STREAM,0); ???? SOCKADDR_IN addrSrv; ?????//把U_LONG的主机字节顺序转换为TCP/IP网络字节顺序 ???? addrSrv.sin_addr.S_un.S_addr = hto

文档评论(0)

yan666888 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档