- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
套接字编程实例套接字编程实例
原文地址:C++网络套接字编程TCP和UDP实例作者:xiaojiangjiang
1.?????? SOCKET编程流程如下
面向有连接的套接字编程
服务器:
1)? socket)
2)? bind)
3)? listen)
4)? accept)
5)? send/recv);
6)?
7)?
客户端:
1)? socket)
2)? connect)
3)? send/recv)
4)?
面向无连接的套接字编程
服务器:(接收端)
1)?????? 创建套接字(socket)
2)?????? 将套接字绑定到一个本地地址和端口上(bind)
3)?????? 用返回的套接字和客户端进行通信(recvfrom);
4)?????? 关闭套接字
客户端:(发送端)
1)? socket)
2)? sendto
3)?
例如:面向有连接的套接字编程
首先在工程-(设置(link 在对象库模板最后面再加上ws2_32.lib客户端:
#includeWinsock2.h
#includestdio.h
int main()
{
//第一步:加载socket库函数
//**********************************************************
WORD wVersionRequested;
WSADATA wsaData;
int err;
wVersionRequested = MAKEWORD( 1, 1 );
err = WSAStartup( wVersionRequested, wsaData );
if ( err != 0 ) {
return 0;
}
if ( LOBYTE( wsaData.wVersion ) != 1 ||
HIBYTE( wsaData.wVersion ) != 1 ) {
WSACleanup( );
return 0;
}
//**********************************************************
//第一步,创建套接字
SOCKET sockClient = socket(AF_INET,SOCK_STREAM,0) ;
//定义套接字地址
SOCKADDR_IN addrSrv;
addrSrv.sin_addr.S_un.S_addr=inet_addr(127.0.0.1); //获取服务器IP地址,inet_addr()将IP地址转为点分十进制的格式
addrSrv.sin_family = AF_INET;
//sin_family 表示地址族,对于IP地址,sin_family成员将一直是AF_INET
addrSrv.sin_port = htons(1234);
//连接服务器
// connect(sockClient,(SOCKADDR*)addrSrv,sizeof(SOCKADDR));
if(connect(sockClient,(SOCKADDR*)addrSrv,sizeof(SOCKADDR))!=0)
{
//MessageBox(连接失败);
//return;
printf(error);
return 0;
}else
{
printf(success);
}
char recvBuf[100];
recv(sockClient,recvBuf,100,0);
printf(客户端接收到的数据:%s,recvBuf);
send(sockClient,client send ,strlen(client send )+1,0);
//关闭套接字
closesocket(sockClient);
//清除套接字资源
WSACleanup();
return 0;
}
?
?
服务器端:
#includeWinsock2.h
#includestdio.h
int main()
{
//第一步:加载socket库函数
//**********************************************************
WORD wVersionRequested;
WSADATA wsaData;
int err;
wVersionRequested = MAKEWORD( 1, 1
您可能关注的文档
最近下载
- 35kV线路跨越公路施工方案.doc VIP
- 专题02 文言文加点词语及相关内容解说考点专训(03)(教师版) 2025年新高考语文一轮复习各考点满分宝鉴.pdf
- 2021年未成年人保护法宣传教育PPT课件.ppt
- (最新版)中学历史新课程标准【2024年修订版】 .pdf VIP
- 35kV线路跨越公路施工方案.docx VIP
- API682(2004第三版)机械密封冲洗方案.ppt
- 年产500吨草莓果酱工厂设计.docx
- 经史子集国学文库:子部·儒家·罗近溪先生明道录.pdf
- 银行对公营销案例分析报告总结.docx VIP
- 专题02 文言文加点词语及相关内容解说考点专训(02)(学生版) 2025年新高考语文一轮复习各考点满分宝鉴.pdf
文档评论(0)