- 10
- 0
- 约9.73万字
- 约 70页
- 2018-05-30 发布于广东
- 举报
入式学院—华清远见旗下品牌:
《Qt4 图形设计与 入式开发》
《Qt4 图形设计与 入式开发》——第7 章、Qt 网络编程
第7 章 Qt 网络编程
入式学院—华清远见旗下品牌:
《Qt4 图形设计与 入式开发》——第7 章、Qt 网络编程
在Linux 下进行网络编程,使用的是BSD 提供的socket 套接字,但它不方便使
用。在 Windows 下,由于 Qt 提供了类似于 MFC 的高层的类,使用 MFC 为编写
Window 32 的应用程序提供了很方便的操作,为程序员新手编写网络程序提供了方
便。
Qt 提供了socket 的支持,它采用API 形式的封装,让程序员在设计程序的时候
变得更加的简单,程序员不需要接触底层的代码就可以对socket 进行操作。
Qt 中提供了有关套接字的操作的类。
(1)QServerSocket 。
(2 )QSocket 。
(3 )QSocketDevice 。
(4 )QSocketNotifier 。
下面看看如何使用 Qt 进行网络编程,我们用一个简单的服务器和一个客户程
序来说明,同时我们还使用TCP 和UDP 双重协议实现这个程序。
QSocketDevice *MUReceiveSocket; // 接字对象
QSocketNotifier *MSocketNofifier; // 接字监听对象
QHostAddress MyAddress; // 用来接收本地的地址
QString FakeAddress; // 设置一个假冒的地址
FakeAddress=get_eth1_ip (); // 获得网卡的地址
MyAddress.setAddress(FakeAddress);
MuReceiveSocket-bind (MyAddress,Port); // 设置假冒的地址
MSocketNotifier=new
QSocketNotifier(MuReceiveSocket-socket(),QSocketNotifier::
Read,0,MSocketNotifier);
在Linux 下进行网络编程,我们可以使用Linux 提供的统一的套接字接口。但是
这种方法涉及太多的结构体,例如,IP 地址、端口转换等,不熟练的人往往容易犯这
样或那样的错误。
Qt 中提供的socket 完全使用了类的封装机制,使用户不需要接触底层的各种结
构体操作。而且它采用Qt 本身的signal-slot 机制,使编写的程序更容易理解。
Qt 提供了4 个与套按字相关的类,如下所示。
(1)QServerSocket:TCP-basedserver 。
(2 )QSocket:BufferedTCPconnection。
(3 )QSocketDevice:Platform-independentlow-levelsocketAPI 。
(4 )QSocketNotifier :Supportforsocketcallbacks 。
下面介绍使用Qt 进行网络编程。我们使用一个简单的 C/S 模式网络程序说明
如何使用Qt 中的套接字。同时我们用TCP 和UDP 两种协议实现这个程序(该程序
客户端与服务端各向对方发送一个字符口串“abc ”)。
1 UDP 实现
UDP 是不连接协议,没有客户端与服务端的概念。
(1)建立套接字相关对象。
入式学院—华清远见旗下品牌:
《Qt4 图形设计与 入式开发》——第7 章、Qt 网络编程
QSocketDevice*MUReceiveSocket;
// 接字对象
QSocketNotifier*MSocketNotifier;
// 接字监听对象
(2 )初始化套接字相关对象。
MUReceiveSocket=new QS
您可能关注的文档
- 毕业设计-嵌入式开发-汉字LED点阵显示 5页.pdf
- 毕业设计-嵌入式开发-电子密 码锁 9页 0.2M.pdf
- 毕业设计-嵌入式开发-基于单片机控制的电子密 码锁 9页 0.1M.pdf
- 毕业设计-嵌入式开发-全遥控数字音量控制的D类功率放大器 32页 0.2M.pdf
- 毕业设计-嵌入式开发-数控直流稳压电源完整论文 13页 0.1M.pdf
- 毕业设计-嵌入式开发-数字抢答器(数字电路)7页 0.1M.pdf
- 毕业设计-嵌入式开发-数字时钟 12页 0.2M.pdf
- 毕业设计-嵌入式开发-同步电机模型的MATLAB仿真 27页 0.2M.pdf
- 毕业设计-嵌入式开发-用单片机控制直流电机 6页 0.1M.pdf
- 毕业设计-嵌入式开发-自动加料机控制系统 59页 0.4M.pdf
最近下载
- 新求精德语强化教程(第4版)初级1课后练习答案(改进版) .pdf VIP
- 北师大版三年级下册数学全册教学设计(配2026年春改版教材).docx
- (2026年)跌倒坠床护理综合指南PPT课件.pptx VIP
- 工程设计应急响应方案(3篇).docx VIP
- 征信简版电子版PDF个人信用报告最新版2024年可编辑带水印模板.pdf VIP
- ntvf调试资料解读.doc VIP
- 电影《色.戒》的叙事伦理.doc VIP
- 上海大学2023-2024学年第1学期《高等数学(上)》期末考试试卷(A卷)附参考答案.pdf
- 佳能EOS1500D基本使用说明书说明书.pdf VIP
- 上海大学2023-2024学年第1学期《高等数学(上)》期末考试试卷(B卷)附参考答案.pdf
原创力文档

文档评论(0)