77范文网 - 专业文章范例文档资料分享平台

计算机网络实验报告2 - 图文(2)

来源:网络收集 时间:2019-02-16 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

#pragma comment(lib, \

class CClientNet {

public: //连接上指定服务器 int Connect(int port,const char* address); //发送信息 //int SendMsg(const char* msg,int len); void SendMsg(); //关闭 void Close();

private: SOCKET m_sock; };

int CClientNet::Connect( int port,const char* address ) { int rlt = 0; //用于记录错误信息并输出 int iErrMsg; //启动WinSock WSAData wsaData; iErrMsg = WSAStartup(MAKEWORD(1,1),&wsaData); if (iErrMsg != NO_ERROR) { printf(\ rlt = 1; return rlt; } //创建Socket m_sock = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP); if (m_sock == INVALID_SOCKET) //创建Socket失败 { printf(\

iii

rlt = 2; return rlt; } //目标服务器数据 sockaddr_in sockaddrServer; sockaddrServer.sin_family = AF_INET; sockaddrServer.sin_port = port;//端口号 sockaddrServer.sin_addr.s_addr = inet_addr(address);//将一个点分十进制的IP转换成一个长整数型数 //连接,sock与目标服务器连接 iErrMsg = connect(m_sock,(sockaddr*)&sockaddrServer,sizeof(sockaddrServer)); if (iErrMsg < 0) { printf(\ rlt = 3; return rlt; } return rlt; }

void CClientNet::SendMsg() { char a[50]; char b[50]; char c[50]; printf(\ gets(b); send(m_sock,b,sizeof(b),0); char recvBuf[50]; recv(m_sock,recvBuf,50,0); printf(\ gets(c); send(m_sock,c,sizeof(c),0); recv(m_sock,recvBuf,50,0); printf(\ while(1) {

iv

gets(a); if(strcmp(a,\ { send(m_sock,a,sizeof(a),0); break; } else { send(m_sock,a,sizeof(a),0); char recvBuf[50]; recv(m_sock,recvBuf,50,0); printf(\ } } }

void CClientNet::Close() { closesocket(m_sock); }

void main() { CClientNet client; //连接到127.0.0.1(即本地),端口号为8888的服务端 printf(\ client.Connect(8888,\ //发送消息 client.SendMsg(); //关闭socket printf(\ client.Close(); system(\}

②. Server端 #pragma once

v

#include #include

#pragma comment (lib,\

class CServerNet {

public: //初始化服务器,返回0表示成功 int Init(const char* address,int port); //更新数据 void Run();

private: SOCKET m_sock; };

int CServerNet::Init( const char* address,int port ) { int rlt = 0; //用于记录错误信息,并输出 int iErrorMsg; //初始化WinSock WSAData wsaData; iErrorMsg = WSAStartup(MAKEWORD(1,1),&wsaData); if (iErrorMsg != NO_ERROR) { //初始化WinSock失败 printf(\ rlt = 1; return rlt; } //创建服务端Socket m_sock = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);

vi

if (m_sock == INVALID_SOCKET) { //创建Socket异常 printf(\ rlt = 2; return rlt; } //声明信息 sockaddr_in serverAddr; serverAddr.sin_family = AF_INET; serverAddr.sin_port = port; serverAddr.sin_addr.s_addr = inet_addr(address); //绑定 iErrorMsg = bind(m_sock,(sockaddr*)&serverAddr,sizeof(serverAddr)); if (iErrorMsg < 0) { //绑定失败 printf(\ rlt = 3; return rlt; } return rlt; }

void CServerNet::Run() { //公开连接 listen(m_sock,5); sockaddr_in tcpAddr; int len = sizeof(sockaddr); SOCKET newSocket; char buf[1024]; int rval; char acc[]=\

vii

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库计算机网络实验报告2 - 图文(2)在线全文阅读。

计算机网络实验报告2 - 图文(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/474990.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: