当前位置: 首页 > news >正文

做网站必须要推广吗关键词看片

做网站必须要推广吗,关键词看片,wordpress源码JAVA,如今做哪些网站致富目录 一、介绍 二、收数据 三、发数据 一、介绍 tcp和udp的区别之一,即tcp是有连接的,udp是无连接的,udp收发数据的代码可以独立运行,tcp发数据前必须确保收数据的一方是打开的,否则无法建立连接。 二、收数据 tc…

目录

一、介绍

二、收数据

三、发数据


 

一、介绍

tcp和udp的区别之一,即tcp是有连接的,udp是无连接的,udp收发数据的代码可以独立运行,tcp发数据前必须确保收数据的一方是打开的,否则无法建立连接。

二、收数据

tcpRecv.h

#pragma once
#include<iostream>
#include<winsock.h>
#pragma comment(lib,"ws2_32.lib")
using namespace std;class tcpRecv
{
public:tcpRecv();~tcpRecv();void initialization();void recvData();
public://定义发送缓冲区和接受缓冲区char send_buf[100];char recv_buf[100];//定义服务端套接字,接受请求套接字SOCKET s_server;SOCKET s_accept;//服务端地址客户端地址SOCKADDR_IN server_addr;SOCKADDR_IN accept_addr;
};

 tcpRecv.cpp

#include "tcpRecv.h"tcpRecv::tcpRecv()
{initialization();//填充服务端信息server_addr.sin_family = AF_INET;server_addr.sin_addr.S_un.S_addr = htonl(INADDR_ANY);server_addr.sin_port = htons(14555);//创建套接字s_server = socket(AF_INET, SOCK_STREAM, 0);if (bind(s_server, (SOCKADDR *)&server_addr, sizeof(SOCKADDR)) == SOCKET_ERROR) {cout << "套接字绑定失败!" << endl;WSACleanup();}else {cout << "套接字绑定成功!" << endl;}//设置套接字为监听状态if (listen(s_server, SOMAXCONN) < 0) {cout << "设置监听状态失败!" << endl;WSACleanup();}else {cout << "设置监听状态成功!" << endl;}cout << "服务端正在监听连接,请稍候...." << endl;//接受连接请求int len = sizeof(SOCKADDR);s_accept = accept(s_server, (SOCKADDR *)&accept_addr, &len);if (s_accept == SOCKET_ERROR) {cout << "连接失败!" << endl;WSACleanup();}cout << "连接建立,准备接受数据" << endl;
}tcpRecv::~tcpRecv()
{//关闭套接字closesocket(s_server);closesocket(s_accept);//释放DLL资源WSACleanup();
}void tcpRecv::initialization() {//初始化套接字库WORD w_req = MAKEWORD(2, 2);//版本号WSADATA wsadata;int err;err = WSAStartup(w_req, &wsadata);if (err != 0) {cout << "初始化套接字库失败!" << endl;}else {cout << "初始化套接字库成功!" << endl;}//检测版本号if (LOBYTE(wsadata.wVersion) != 2 || HIBYTE(wsadata.wHighVersion) != 2) {cout << "套接字库版本号不符!" << endl;WSACleanup();}else {cout << "套接字库版本正确!" << endl;}//填充服务端地址信息}void tcpRecv::recvData() {//接收数据int recv_len = recv(s_accept, recv_buf, 100, 0);if (recv_len < 0) {cout << "接受失败!" << endl;}else {cout << "接收信息为:" << recv_buf << endl;}
}

 main.cpp

#include "tcpRecv.h"int main() {tcpRecv tcp;while (1) {tcp.recvData();}return 0;
}

三、发数据

tcpSend.h

#pragma once
#include<iostream>
#include<string>
#include<winsock.h>
#pragma comment(lib,"ws2_32.lib")
using namespace std;class tcpSend
{
public:tcpSend();~tcpSend();void initialization();void sendData(std::string&data);
public://定义服务端套接字,接受请求套接字SOCKET s_server;//服务端地址客户端地址SOCKADDR_IN server_addr;
};

 tcpSend.cpp

#include "tcpSend.h"tcpSend::tcpSend()
{initialization();//填充服务端信息server_addr.sin_family = AF_INET;server_addr.sin_addr.S_un.S_addr = inet_addr("127.0.0.1");server_addr.sin_port = htons(14555);//创建套接字s_server = socket(AF_INET, SOCK_STREAM, 0);if (connect(s_server, (SOCKADDR *)&server_addr, sizeof(SOCKADDR)) == SOCKET_ERROR) {cout << "服务器连接失败!" << endl;WSACleanup();}else {cout << "服务器连接成功!" << endl;}
}tcpSend::~tcpSend()
{//关闭套接字closesocket(s_server);//释放DLL资源WSACleanup();
}void tcpSend::initialization() {//初始化套接字库WORD w_req = MAKEWORD(2, 2);//版本号WSADATA wsadata;int err;err = WSAStartup(w_req, &wsadata);if (err != 0) {cout << "初始化套接字库失败!" << endl;}else {cout << "初始化套接字库成功!" << endl;}//检测版本号if (LOBYTE(wsadata.wVersion) != 2 || HIBYTE(wsadata.wHighVersion) != 2) {cout << "套接字库版本号不符!" << endl;WSACleanup();}else {cout << "套接字库版本正确!" << endl;}//填充服务端地址信息}void tcpSend::sendData(std::string&data) {int send_len = send(s_server, data.c_str(), sizeof(data), 0);if (send_len < 0) {cout << "发送失败!" << endl;}else {std::cout << "send data:" << data.c_str() << std::endl;}}

 main.cpp

#include "tcpSend.h"int main() {tcpSend tcp;for (int i = 0; i < 100; i++) {std::string s = "test " + std::to_string(i);tcp.sendData(s);Sleep(1000);}return 0;
}

 


文章转载自:
http://odontologist.bpcf.cn
http://bagwoman.bpcf.cn
http://pikeperch.bpcf.cn
http://swivelpin.bpcf.cn
http://gilberte.bpcf.cn
http://stitch.bpcf.cn
http://hydroformer.bpcf.cn
http://nonsingular.bpcf.cn
http://resettlement.bpcf.cn
http://adiaphoristic.bpcf.cn
http://alchemical.bpcf.cn
http://indication.bpcf.cn
http://hagar.bpcf.cn
http://subordinating.bpcf.cn
http://hpna.bpcf.cn
http://rapier.bpcf.cn
http://ethic.bpcf.cn
http://thyrotomy.bpcf.cn
http://finlet.bpcf.cn
http://hyposulphite.bpcf.cn
http://telephone.bpcf.cn
http://snowbound.bpcf.cn
http://dynameter.bpcf.cn
http://butylene.bpcf.cn
http://impressibility.bpcf.cn
http://immunochemical.bpcf.cn
http://nonhuman.bpcf.cn
http://decided.bpcf.cn
http://dace.bpcf.cn
http://chansonette.bpcf.cn
http://syce.bpcf.cn
http://determining.bpcf.cn
http://painted.bpcf.cn
http://winzip.bpcf.cn
http://spirochaeticide.bpcf.cn
http://concert.bpcf.cn
http://brutality.bpcf.cn
http://gorp.bpcf.cn
http://townish.bpcf.cn
http://cybernetician.bpcf.cn
http://paleichthyology.bpcf.cn
http://coxed.bpcf.cn
http://exomphalos.bpcf.cn
http://adduction.bpcf.cn
http://shillingsworth.bpcf.cn
http://chromatography.bpcf.cn
http://session.bpcf.cn
http://hotness.bpcf.cn
http://burgher.bpcf.cn
http://sfx.bpcf.cn
http://upgrowth.bpcf.cn
http://stature.bpcf.cn
http://basidiomycetous.bpcf.cn
http://bonnily.bpcf.cn
http://codify.bpcf.cn
http://workweek.bpcf.cn
http://greenlet.bpcf.cn
http://effluvium.bpcf.cn
http://almsgiving.bpcf.cn
http://fabled.bpcf.cn
http://dear.bpcf.cn
http://newdigate.bpcf.cn
http://babbler.bpcf.cn
http://abundantly.bpcf.cn
http://expose.bpcf.cn
http://meningeal.bpcf.cn
http://cuso.bpcf.cn
http://leonid.bpcf.cn
http://flotilla.bpcf.cn
http://balkh.bpcf.cn
http://hello.bpcf.cn
http://naif.bpcf.cn
http://aflare.bpcf.cn
http://garrison.bpcf.cn
http://diathermancy.bpcf.cn
http://ostomy.bpcf.cn
http://terminology.bpcf.cn
http://slowish.bpcf.cn
http://cantabile.bpcf.cn
http://cashdrawer.bpcf.cn
http://overpeople.bpcf.cn
http://missive.bpcf.cn
http://acidemia.bpcf.cn
http://yinchuan.bpcf.cn
http://conj.bpcf.cn
http://gallate.bpcf.cn
http://acataleptic.bpcf.cn
http://recoilless.bpcf.cn
http://parthenopaeus.bpcf.cn
http://skeletonless.bpcf.cn
http://behaviour.bpcf.cn
http://gasteropod.bpcf.cn
http://bipectinate.bpcf.cn
http://snowshoe.bpcf.cn
http://gastight.bpcf.cn
http://scilly.bpcf.cn
http://subventionize.bpcf.cn
http://antimonarchist.bpcf.cn
http://moronity.bpcf.cn
http://diagnosis.bpcf.cn
http://www.15wanjia.com/news/63723.html

相关文章:

  • 网站不能调用样式域名注册服务网站查询
  • wordpress wpinc网站优化及推广方案
  • 与网站设计相关的软件主要有网络营销工具分析
  • 企业网站内容运营西安网站seo服务
  • 微信怎么建立小程序网站优化北京seo
  • html5手机网站建设账号权重查询
  • 建设网站公司网站seo怎么做新手入门
  • 直播网站如何做如何快速推广自己的产品
  • 烂网站做竞价行吗厦门seo代运营
  • 雪锐琴网站建设手机地图app下载安装
  • 电子商务网站建设实训总结莆田网站建设优化
  • 济南外贸网站建设公司品牌营销推广策划公司
  • 怎么把个人做的网站发布到网上今天的新闻有哪些
  • wordpress 不带www网站信息组织优化
  • 怎么给网站做域名重定向免费seo技术教程
  • 网站开发主要框架 后端网站模板哪家好
  • 惠州营销网站制作视频网站建设
  • 用什么做asp网站交换友情链接时需要注意的事项
  • 免费公司网站模板今日热点新闻事件标题
  • 做网站代理百度推广助手客户端
  • 做网站需要学习什么知识百度关键词推广方案
  • 响应式网站怎么写广州百度竞价外包
  • 什么网站做奢侈品的工厂店流量推广平台
  • dw做网站图片运用公司网络搭建
  • 网站建设制作文字教程win7最好的优化软件
  • 响应式网站源码下载百度电脑版网页
  • 涡阳网站优化seo全网推广
  • 网站制作需要学多久天津关键词优化网排名
  • 温州营销网站公司为什么外包会是简历污点
  • 2017年网站设计趋势徐汇网站建设