首页 > 编程语言 >QT网络编程【二】【Socket】

QT网络编程【二】【Socket】

时间:2022-08-31 00:55:10浏览次数:95  
标签:协议 QT 编程 TCP 接口 com winsock Socket socket

1.QT中添加socket 库的相关操作

2.正常c++11 VS2019使用socket库的操作

3.winsock2 与 sys/socket.h的区别?

4.WinSock2 的基本操作?

5.socket的创建
参数的说明[]:http://t.zoukankan.com/MyselfDancing-p-3660167.html

参数:
domain:即协议域,又称为协议族(family)。常用的协议族有,AF_INET、AF_INET6、AF_LOCAL等;
type:指定socket类型。常用的socket类型有,SOCK_STREAM、SOCK_DGRAM、SOCK_RAW、SOCK_PACKET等等;
protocol:指定协议。常用的协议有,IPPROTO_TCP、IPPTOTO_UDP、IPPROTO_SCTP、IPPROTO_TIPC等。当protocol为0时,会自动选择type类型对应的默认协议。

发现无论如何找都找不到这些这个库的源码

6.socket到底是什么?
参考网址[]:https://mp.weixin.qq.com/s/U7GR7hbUJBK_yzB4vaC6TQ
这个问题真的很让人困扰。
每个解释的博客或者是推文似乎都用着同一套让人完全听不懂的说辞。
直至找到这篇比较有头有尾的说明。
socket(套接字)就是把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。
socket就是一组简单的接口,谁的接口? TCP/IP协议簇的接口。
不同进程间通信需要用到IPC,同一主机的还好说(用PID标识),不同主机的只能通过网络。TCP/IP 协议簇 完成了这项任务。网络层的ip协议能够确定主机地址,而传输层的协议加端口可以确定主机应用程序(进程)。 三元组(IP地址,协议,端口号)就能标识网络进程。socket起源于UNIX,“一切皆文件”的体现。
socket就是一类特殊的文件。操作模式就是open-read/write-close 。

7.winsock与socket的区别与联系?
对winsock的讲解更是抽象,只要提到winsock 百度上全是马上教你如何简易实现TCP、UDP的C/S模型 。
[]:https://mp.weixin.qq.com/s/-J3rDK_LbYXATQRSTzON9w
[]:https://wenku.baidu.com/view/f3d66cfe04a1b0717fd5dd3f.html 这个也不错
便于理解,这里是Linux的网络解读[]:https://developer.aliyun.com/article/801566
终于是有个比较听得懂的解说。
winsock就是微软用socket 开发的一个网络编程的相关函数,是Windows下的网络编程接口。
里面还有对具体代码的剖析(指winsock实现源码,而不是应用源码) 泪目

8.如何实现C/S?
在弄明白了6,7之后,我觉得变得开朗许多。
只需要掌握基本框架就行。C/S很好搭。

标签:协议,QT,编程,TCP,接口,com,winsock,Socket,socket
From: https://www.cnblogs.com/black-worrior-2000/p/16641106.html

相关文章

  • Java常用编程类库
    Java语言已经有许多非常成熟的开源基础类库,封装了日常开发中的各种常用操作,如:对象判空,字符串编码,本地缓存等等。可以直接在项目中引入对应类库使用即可,或者参与完善相应类......
  • C嵌入式编程设计模式-C语言类实现方式
    类的封装方式以文件作为封装边界,将外部调用的函数声明,全局变量变量放入头文件中,将具体实现放入.c文件中。简单栈的实现代码:/************************************......
  • 链式编程学习
    链式编程学习什么是链式编程在我们编写代码过程中听到过很多说法;像面向切面编程、函数式编程、面向对象编程、泛式编程、面向接口等。所谓的链式编程,则是类似与StringBu......
  • shell编程【一】
    参考网址:【Linux命令大全】[]:https://linux265.com/course/linux-commands.html为什么要学习shell指令?学习shell指令的本身也是在了解Linux系统。shell是开发出来更好地......
  • 阅读《计算机图形学编程(使用OpenGL和C++)》12 - 光照
    现在最常见的光照模型称为“ADS”模型,因为它们基于标记为A、D和S的3种类型的反射。●环境光反射(Ambientreflection)模拟低级光照,影响场景中的所有物体。●漫反射(Diffuse......
  • [ROS学习]10. 服务端Server的编程实现
    参考笔记:【ROS学习笔记】10.服务端Server的编程实现内容参考:基于B站ROS公开课:【古月居】古月·ROS入门21讲基于Ubuntu20.04.1、Noetic版本本节说明上一讲学习了基于Ser......
  • 2022 IEEE 编程语言榜单发布!Python 又双叒叕霸榜了,学 SQL 工作更吃香!
    哈喽兄弟们!近年来,Python宛如一匹黑马,一骑绝尘,横扫TIOBE、StackOverflow等榜单,如今在IEEESpectrum发布的第九届年度顶级编程语言榜单中,Python依然是C、C++......
  • QT——状态栏添加label
    QLabel*state_msg=newQLabel(this);state_msg->setMinimumSize(state_msg->sizeHint());//设置label属性state_msg->setAlignment(Qt::AlignHCenter);//设......
  • Qt 浮点数比较
    计算机表示浮点数都有一个精度的限制,由于精度的限制会发生部分的截断,使得原本不相等的浮点数就变成了相等假设floatx=3.144444445,y=3.144444448从数学角度上看,x......
  • websocket
    maven<dependency><groupId>org.springframework</groupId><artifactId>spring-websocket</artifactId></dependency> WebSocketConfigpackagecom.new3s.......