socket编程实验SOCKET编程

socket编程实验  时间:2021-08-18  阅读:()

socket编程的原理呢?

(1)客户端

①建立客户端的Socket,确定要连接的服务器的主机名和端口。

②发送连接请求到服务器,并等待服务器的回馈信息。

③连接成功后,与服务器进行数据的交互。

④数据处理完毕后,关闭自身的Socket连接

(2)服务器端

①建立服务器端的Socket,开始侦听整个网络中的连接请求。

②当检测到来自客户端的连接请求时,向客户端发送收到连接请求的信息,并建立与客户端之间的连接。

③当完成通信后,服务器关闭与客户端的Socket连接。

老师给了socket编程实验的client,server两个程序代码的实例,但是下载下来之后不懂怎么运行。

别用VC环境 = =VC的环境都十年前的东西了。

WINSOCK2是近4.5年才出来的。

要么你配置下个WinSock2.h,要么换个环境,要么就改下代码用winsock.h

SOCKET编程

#include <string.h> #include <winsock.h> #include <windows.h> #include <iostream.h> #ment (lib,"ws2_32.lib") int main (int argc, char *argv[]) { int iportFrom,iportTo; int testsocket; int iopenedport = 0; struct sockaddr_in target_addr; WSADATA wsaData; WORD wVersionRequested=MAKEWORD(1,1); if (argc <= 3) { cout << "使用格式 : " << argv[0] << " 主机IP地址 开始端口号 结束端口号 " << endl; exit(1); } if (atoi (argv[2]) > atoi (argv[3])) { cout << "错误!开始端口号必须小于结束端口号" << endl; exit(1); } else { if (WSAStartup (wVersionRequested , &wsaData) ) { cout << "连接socket库失败,请检查版本号是否为1.1 " << endl; exit(1); } iportFrom=atoi (argv[2]); iportTo=atoi (argv[3]); for (int i=iportFrom; i <= iportTo; i++) { cout << "正在建立socket................................" << endl; if ((testsocket=socket (AF_INET,SOCK_STREAM,0) ) == INVALID_SOCKET) { cout << "Socket建立失败!" << endl; exit(0); } target_addr.sin_family = AF_INET; target_addr.sin_port = htons(i); target_addr.sin_addr.s_addr = _addr (argv[1]); cout << "正在扫描端口:" << i << endl; if (connect (testsocket, (struct sockaddr *) &target_addr, sizeof(struct sockaddr)) == SOCKET_ERROR) cout << "端口" << i << "关闭!" << endl; else { iopenedport++; cout << "端口" << i << "开放 " << endl; } } cout << "目标主机" << argv[1] << "从" << iportFrom << "--" << iportTo << "共有" << iopenedport << "个端口开放" << endl; closesocket (testsocket); WSACleanup(); } return 0; } vc6.0 下 编译

云如故枣庄高防(49元)大内存2H2G49元8H8G109元

云如故是一家成立于2018年的国内企业IDC服务商,由山东云如故网络科技有限公司运营,IDC ICP ISP CDN VPN IRCS等证件齐全!合法运营销售,主要从事自营高防独立服务器、物理机、VPS、云服务器,虚拟主机等产品销售,适合高防稳定等需求的用户,可用于建站、游戏、商城、steam、APP、小程序、软件、资料存储等等各种个人及企业级用途。机房可封UDP 海外 支持策略定制 双层硬件(傲...

提速啦香港独立物理服务器E3 16G 20M 5IP 299元

提速啦(www.tisula.com)是赣州王成璟网络科技有限公司旗下云服务器品牌,目前拥有在籍员工40人左右,社保在籍员工30人+,是正规的国内拥有IDC ICP ISP CDN 云牌照资质商家,2018-2021年连续4年获得CTG机房顶级金牌代理商荣誉 2021年赣州市于都县创业大赛三等奖,2020年于都电子商务示范企业,2021年于都县电子商务融合推广大使。资源优势介绍:Ceranetwo...

王小玉网-美国洛杉矶2核4G 20元/月,香港日本CN2 2核2G/119元/季,美国300G高防/80元/月!

 活动方案:美国洛杉矶 E5 2696V2 2核4G20M带宽100G流量20元/月美国洛杉矶E5 2696V2 2核4G100M带宽1000G流量99元/季香港CN2 E5 2660V2 2核2G30M CN2500G流量119元/季日本CN2E5 2660 2核2G30M CN2 500G流量119元/季美国300G高防 真实防御E5 2696V2 2核2G30M...

socket编程实验为你推荐
安全防护安全防护用品都有哪些aftereffectAfter effect Premere分别是什么软件,做什么的?电视蚂蚁电视蚂蚁是不是不能用了?我在国外该怎样看奥运?电子听诊器怎样选择听诊器运行时错误1004excel 打开表格提示 运行是错误1004,本人不会用宏和VB,只是表格内数据显示不出来wizardryHogwarts for pikeys是什么意思???最好的视频播放器现在最好的播放器 是什么呀mapsourcemapsource下载gps后的航点、航迹怎么转换成mapgis格式?系统登录界面怎么样将系统登陆界面设置为可以切换到窗口登陆?vrrp配置INTERNET协议属性里面的备用配置有什么用?
虚拟主机购买 100m网站空间 北京网站空间 域名升级访问 photonvps 国外服务器网站 vmsnap3 美国便宜货网站 godaddy支付宝 账号泄露 英语简历模板word 权嘉云 大容量存储器 100m空间 工作站服务器 91vps 1g内存 umax120 卡巴斯基破解版 789电视剧 更多