93一个Socket程序实例

93一个Socket程序实例

ID:41760024

大小:66.71 KB

页数:4页

时间:2019-09-01

93一个Socket程序实例_第1页
93一个Socket程序实例_第2页
93一个Socket程序实例_第3页
93一个Socket程序实例_第4页
资源描述:

《93一个Socket程序实例》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、*9.3一个Socket程序实例Socket接口是TCP/IP网络编程的API,被广泛应用J**Internet程序设计中。Socket接口定义了许多两数或例程,程序员可以用它们來开发TCP/IP网络上的应用程序。Socket接口最早在BSDUNIX实现,H前Windows下也很好地提供j"WindowsSockets(即Winsock)实现。Socket提供了对传输层TCP、UDP的调用接口,程序员用Socket提供的函数町以决定调用TCP还是UDP完成数据的传输,如图9-30所示。媒体应用层网络层琏路层图9-30Sock

2、et在所处位置后面给出一个基于C语言的网络程序源代码。程序包含客户端和服务器端两个程序。客户端运行后读取键盘输入的字符串并传至服务器,服务器端程序收字符串到后显示到屏幕上。该程序调用TCP传输数据,客户端向服务器端首先发起连接建立的请求,建立连接后客户端向服务器端传输数据,程序最后进行连接释放。程序运行环境如图9・31所示,需配置好1P地址,并保证网络连通正确。192.168_L..Z192.168_1_1图9・31程序运行环境程序在VC6.0下编译通过,具体步骤为:(1)运行VC,依次选择"文件->新建->项Fl->Win

3、32ConsoleApplication->Anemptyproject",创建一个控制台程序(2)依次选择“文件・>新建・>文件・>C++SourceFile”,新建一个空白C++源程序。(3)在建好的C++源文件中输入服务器或客户端代码,然后编译运行即可。为帮助读者理解程序,每行代码都加冇注释。因为木书重点不是网络编程,所以此处不再对该程序过多解禅。1.客户端程序:include〃包含windowssocket所需头文件#includc〃定义程序中使用的常量#defineSERV

4、ER.ADDRESS”192」6&1.1"#definePORT5150#defineMSGSIZE1024#pragmacomment(lib,Mws2_32.1ibH)intmain()(WSADATAwsaData;SOCKETsClient;SOCKADDRJNserver;charszMessage[MSGS!ZEJ;WSAStartup(0x0202,&wsaData);〃服务器端IP地址〃服务器的端口号〃收发缓冲区的大小〃加载windowssocket所蛊库文件〃存放windowssocket初始化信息的变最〃

5、连接所用套节字〃保心远程服务器的地址信息〃定义发送缓冲区〃初始化Windowssocket库sClient=socket(AF_INET,SOCK.STREAM,IPPROTO.TCP);〃创建客户端套节字,memset(&server,0,sizcof(SOCKADDRJN));〃先将保存地址的server置为全0scrvcr.sin.family=PFJNET;〃声明地址格式是TCP/IP地址格式scrvcr.sin_port=htons(PORT);〃指明连接服务器的端口号scrvcr.sin_addr.s_addr=

6、inct」ddr(SERVER_ADDRESS);〃指明连接服务器的IP地址connect(sClient,(structsockaddr*)&server,sizeof(SOCKADDR_IN));〃连到刚才指明的服务器上while(TRUE){printf("Send:");gets(szMessage);〃从键盘输入发送的数据send(sClient,szMessage,strlen(szMessage),0);//发送数据)closcsockct(sClicnt);//释放连接和进彳亍结束工作WSACleanupO;

7、return0;}2.服务器端程序:#include#include〃定义程序中使用的常量#definePORT5150#defineMSGSIZE1024#pragmacomment(lib,,'ws2_32.1ib")intmain(){WSADATAwsaData;SOCKETwsaData;sListen;〃包含windowssocket所需头文件〃服务器的端口号〃收发缓冲区的大小〃加载windowssocket所需库文件〃存放windowssocket初始化信息的变量〃侦听

8、所用套节字SOCKETsClicnt;SOCKADDRJNlocal;SOCKADDRJNclient;〃和客户端连接所川套节字〃保存侦听的地址信息〃保冇接入客户端的地址信息chiirszMessage[MSGS!ZE];〃接收缓冲区intret;〃接收数据时的反馈信息intiaddrSi

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。