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

vs网站开发表格大小设置百度官网登录

vs网站开发表格大小设置,百度官网登录,融水县住房和城乡建设局网站,wordpress 国内 模板一.什么是Socket? Socket,又叫套接字,是在应用层和传输层的一个抽象层。它把TCP/IP层复杂的操作抽象为几个简单的接口供应用层调用以实现进程在网络中通信。 socket分为流socket和数据报socket,分别基于tcp和udp实现。 SOCK_STREAM 有以下…

一.什么是Socket?

Socket,又叫套接字,是在应用层和传输层的一个抽象层。它把TCP/IP层复杂的操作抽象为几个简单的接口供应用层调用以实现进程在网络中通信。

 socket分为流socket和数据报socket,分别基于tcp和udp实现。

SOCK_STREAM 有以下几个特征:

  1. 数据在传输过程中不会消失;
  2. 数据是按照顺序传输的;
  3. 数据的发送和接收不是同步的。

UNIX/Linux 程序在执行任何形式的 I/O 操作时,都是在读取或者写入一个文件描述符。一个文件描述符只是一个和打开的文件相关联的整数,它的背后可能是一个硬盘上的普通文件、FIFO、管道、终端、键盘、显示器,甚至是一个网络连接

请注意,网络连接也是一个文件,它也有文件描述符!你必须理解这句话。

与 UNIX/Linux 不同的是,Windows 会区分 socket 和文件,Windows 就把 socket 当做一个网络连接来对待,因此需要调用专门针对 socket 而设计的数据传输函数,针对普通文件的输入输出函数就无效了。

tcpserver代码:

#include "socket.hpp"
#include <iostream>
#include <string>
#include <memory>int main()
{SocketInit socketInit;//创建监听套接字SOCKET sListen = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);if (sListen == SOCKET_ERROR){std::cout << "监听失败" << std::endl;}//绑定套接字sockaddr_in sock_in;sock_in.sin_family = AF_INET;sock_in.sin_port = htons(1234);sock_in.sin_addr.S_un.S_addr = INADDR_ANY;int ret = bind(sListen, (sockaddr*)(&sock_in), sizeof(sock_in));if (ret == SOCKET_ERROR){std::cout << "绑定套接字失败" << std::endl;closesocket(sListen);return -1;}//if (listen(sListen, 10) == SOCKET_ERROR){std::cout << "监听失败" << std::endl;return -1;}sockaddr_in sock_client;int nlen = sizeof(sockaddr_in);//接受客户端的连接SOCKET sClient = accept(sListen, (sockaddr*)(&sock_client), &nlen);if (sClient == SOCKET_ERROR){std::cout << "接收客户端失败" << std::endl;closesocket(sListen);return -1;}//std::cout << "与客户端连接成功...." << std::endl;while (true) {char buff[1024] = { 0 };int result = recv(sClient, buff, 1024, 0);if (result > 0) {std::cout << "接收到了数据" << buff <<std::endl;}else{std::cout << "客户端断开连接" << std::endl;break;}}closesocket(sListen);getchar();return 0;
}

client代码:

#define _WINSOCK_DEPRECATED_NO_WARNINGS
#include "socketinit.hpp"
#include <iostream>
#include <string>
#include <memory>
#include <WS2tcpip.h>int main()
{SocketInit socketInit;//创建套接字SOCKET sClient = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);if (sClient == SOCKET_ERROR){std::cout << "创建失败" << std::endl;}//绑定套接字sockaddr_in sock_in;sock_in.sin_family = AF_INET;sock_in.sin_port = htons(1234);sock_in.sin_addr.S_un.S_addr = inet_addr("192.168.152.1");int ret = connect(sClient, (sockaddr*)(&sock_in), sizeof(sock_in));if (ret == SOCKET_ERROR){std::cout << "连接服务器失败" << std::endl;closesocket(sClient);return -1;}while (true) {char buff[1024] = { 0 };gets_s(buff, 1024);int result = send(sClient, buff, strlen(buff), 0);}closesocket(sClient);getchar();return 0;
}

http://www.yayakq.cn/news/520189/

相关文章:

  • 德国网站后缀凡客诚品的商业模式
  • 软件开发包含网站开发烟台seo快速排名
  • 达州+网站建设百度的营销方式有哪些
  • 佛山高端网站制作公司哪家好wordpress 生成静态
  • asp企业网站源码建设部网站不支持360
  • dw做游戏网站代码网站建设怎么做账
  • 海南网站制作代做效果图网站哪家好
  • ps企业网站模板免费下载wordpress的地址在本地
  • 域名抢注网站源码石家庄有什么做网站的公司
  • 网站广告代码检测最有效的线下推广方式
  • 企业站群系统wordpress 4.2.4中文
  • 网页 网站及与之相关的概念做爰全过程免费的视频凤凰网站
  • wordpress标签云页面业务型网站做seo
  • 曲靖网站建设0doit传奇游戏开发
  • 山东平台网站建设企业东莞建设网沟通平台
  • cms建站系统陕西旭泽建设有限公司网站
  • 莆田企业自助建站网站建设站
  • 外贸网站是用什么软件做的网站建设收费标准新闻
  • 网站asp文件只读seo建站营销
  • 徐州制作网站软件什么网站招聘外国人做兼职
  • 英文网站模板响应式网站检测工具
  • 洮南市城乡和住房建设局网站黄冈市建设局网站
  • 网站回答问题app怎么做品牌设计公司成都
  • 湖南专业网站建设服务淘宝做任务网站
  • 门户网站建设情况golang 网站开发 教程
  • 永城网站设计公司杭州注册公司流程是怎样的
  • 旅游网站建设方法的探讨建网站商城有哪些公司
  • 佛山设计网站自建站跨境电商
  • 比较好的网站开发框架网站评论做外链
  • 网站建设教程哪家公司好wordpress 优酷 html5