Qt網路程式 基於TCP的伺服器 客戶端例項

2021-09-24 16:25:37 字數 792 閱讀 4561

首先我們需要設定伺服器: 

專案檔案中加入:qt += network 

相關標頭檔案:

#include//監聽套接字

#include//建立連線的通訊套接字12

在標頭檔案中,定義套接字:

qtcpserver *tcpserver;//監聽套接字

qtcpsocket *tcpsocket;//通訊套接字12

隨後,在cpp檔案中初始化:

//初始化套接字

tcpserver = null;

tcpsocket = null;

//監聽套接字,指定父物件自動**空間

tcpserver = new qtcpserver(this);

//設定埠

tcpserver->listen(qhostaddress::any,8888);12

3456

7當新連線建立時,監聽套接字會自動觸發訊號:newconnection ,讀取到資料之後,通訊套接字會觸發訊號readyread,因此,我們可以通過訊號槽機制進行操作,這裡巢狀了兩個qt5的lambda表示式:

//初始化套接字

tcpsocket = null;

//分配空間,指定父物件

tcpsocket = new qtcpsocket(this);12

34訊號槽與伺服器類似,這裡的lambda表示式沒有巢狀:

效果如圖,連線建立後伺服器與客戶端相互傳送資料: 

如果閱讀本篇部落格有障礙,可參考網路程式設計基礎知識: 

可以參考 

原文: 

tcp網路伺服器程式

tcp server.c include include include include include include include include define portnumber 3333 int main 伺服器端填充sockaddr結構 bzero server addr,sizeof...

QT多執行緒伺服器Tcp

最近寫乙個專案用到了伺服器開啟多執行緒,閱部落格無數,奈何沒有理解精髓,致晚上夢見自己寫出來了。次日,奮筆疾書,埋頭苦學,最後終於寫出來了。現在總結一下。伺服器多執行緒需要用到 qtcpserver qtcpsocket qthread qtcpserver 最主要的乙個incomingconnec...

網路 tcp 伺服器 server

import socket def main 1.買個手機 建立套接字 socket tcp server socket socket.socket socket.af inet,socket.sock stream 2.插入手機卡 繫結本地資訊 bind tcp server socket.bin...