c++客户端

news/2025/2/23 2:50:36/

socket http 代理IP销售#include "pch.h"
#include <iostream>
#include <cstdio>
#include<iostream>
#include<string>
#include<WinSock2.h>
#pragma comment(lib,"ws2_32.lib")
#include <time.h> 
#include <sys/types.h>
#include <fcntl.h>using namespace std;
const int PORT = 8888;//自定义端口号,连接的服务器端口
#define SERVER_IP "127.0.0.1"//需要连接的服务器IP,这里我设置成本机
#define MaxBufSize 1024
#define _CRT_SECURE_NO_WARINGStypedef unsigned char       BYTE;int main() {WSADATA wsd;WSAStartup(MAKEWORD(2, 2), &wsd);SOCKET SocketClient = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);unsigned long ul = 1;ioctlsocket(SocketClient, FIONBIO, (unsigned long*)&ul);//设置成非阻塞,如果长时间服务端无反应,客户端就报错//设置需要连接的服务器信息SOCKADDR_IN  ClientAddr;ClientAddr.sin_family = AF_INET;ClientAddr.sin_addr.S_un.S_addr = inet_addr(SERVER_IP);ClientAddr.sin_port = htons(PORT);//设置服务器无反应的链接时间struct timeval tm;tm.tv_sec = 3;tm.tv_usec = 0;int ret = -1;int n = 0;if (-1 != connect(SocketClient, (SOCKADDR*)&ClientAddr, sizeof(SOCKADDR))){ret = 1; // 连接成功}else{fd_set set;FD_ZERO(&set);FD_SET(SocketClient, &set);if (select(-1, NULL, &set, NULL, &tm) <= 0){ret = -1; // 有错误(select错误或者超时)}else{int error = -1;int optLen = sizeof(int);getsockopt(SocketClient, SOL_SOCKET, SO_ERROR, (char*)&error, &optLen);// 之所以下面的程序不写成三目运算符的形式, 是为了更直观, 便于注释if (0 != error){ret = -1; // 有错误}else{ret = 1;  // 无错误}}}char info[1024], SendBuff[MaxBufSize], RecvBuff[MaxBufSize];while (1) {//需要发送的内容const char *greeting ="{hello}";int k = 0;k = send(SocketClient, (const char*)greeting, strlen(greeting), 0);ul = 0;ioctlsocket(SocketClient, FIONBIO, (unsigned long*)&ul); //设置为阻塞模式if (k>0){cout << "发送成功" << endl;}else if (k<=0){cout << "发送失败或服务器断开连接" << endl;}int n = 0;char RecvBuff[1024];//定义字符串,容纳服务器返回值memset(RecvBuff, 0, sizeof(RecvBuff));//先清空字符串n = recv(SocketClient, RecvBuff, sizeof(RecvBuff), 0);//接受服务器返回内容if (n > 0) {cout << "接收到来自服务器的消息为:" << RecvBuff << endl;}else if (n=0){cout << "服务器异常";}if (!strcmp(RecvBuff, "OK")){cout<< SERVER_IP <<"正常返回";}else{cout<<"服务器异常";}cout << endl;memset(RecvBuff, 0, sizeof(RecvBuff));getchar();}closesocket(SocketClient);WSACleanup();return 0;}

http://www.ppmy.cn/news/333288.html

相关文章

客户端

客户端&#xff08;Client&#xff09;或称为用户端&#xff0c;是指与服务器相对应&#xff0c;为客户提供本地服务的程序。一般安装在普通的客户机上&#xff0c;需要与服务端互相配合运行。因特网发展以后&#xff0c;较常用的用户端包括了如万维网使用的网页浏览器&#xf…

一周年

人的一生不知道有多少个日子是需要特殊去记忆的&#xff0c;一周年其实就是从去年的今天到现在&#xff0c;之所以叫一周年可能就因为它是个不寻常的日子&#xff0c;没有什么语言来表达它&#xff0c;去年的今天起的很早去赶车&#xff0c;去做一件这辈子第一次做就不会再做的…

十年

想写点什么记录下自己的心情&#xff0c;好像有点困难。 因为经济危机&#xff0c;S公司马上要O了。有幸可以去米国去见证这一历史时刻&#xff1f;不管怎么样&#xff0c;似乎又要徘徊在了一个十字路口上&#xff1b;与此同时&#xff0c;帝都的房价一路飙升&#xff0c;以势不…

2020-10-10

今天工作 查看小程序代码 学习vue,js,c# { “resource”: “/c:/Users/1/Downloads/mpview/mpview/src/components/buildCol5.vue”, “owner”: “generated_diagnostic_collection_name#0”, “severity”: 8, “message”: “[vue/no-parsing-error]\nParsing error: unexp…

2020.10.10

PS基础 1、PS简介 [Adobe Photoshop&#xff0c;简称“PS”]&#xff0c;是由Adobe 开发和发行的[图像处理软件]。 Photoshop主要处理以像素所构成的数字图像。使用其众多的编修与绘图工具&#xff0c;可以有效地进行图片编辑工作。 ps有很多功能&#xff0c;在图像、图形、…

我与CSDN两周年

来到CSDN不知不觉已经两年了&#xff0c;最初步入CSDN的初心既是解决一些研发过程中的问题&#xff0c;但后来慢慢的就在CSDN中开始分享一些文章和一些项目实战&#xff0c;后面则是和一些志同道合的人进行经验的分享和技术的交流&#xff0c;在此期间收获很大&#xff0c;但后…

20 周年特别策划 | 说出你与 CSDN 的故事!

CSDN 编者按&#xff1a;不知不觉&#xff0c;CSDN 已经与开发者共同走过 20 年岁月。20 年间&#xff0c;CSDN 与开发者们互相见证彼此的进步&#xff0c;共同收获成长。在成立 20 周年之际&#xff0c;CSDN 特推出特别策划&#xff0c;让开发者说出自己与 CSDN 的成长故事。无…

【CSDN】5周年创作纪念日,不忘初心,砥砺前行。

首先特别感谢 CSDN 官方平台&#xff0c;感谢给我提供这样一个创作平台。也感谢平台记录了我的创作历程&#xff0c;正如信中所讲&#xff0c;初心还在但博客已良久未更新。工作固然忙碌&#xff0c;但也不是因为日常工作太忙碌&#xff0c;导致停止了博客更新。说来&#xff0…