學了網路程式設計,一直想來練練手,於是決定自動動手來完成乙個linux下簡單聊天室的專案,本著由淺入深的原則,我會先從最簡單的功能開始,然後逐漸增加其他功能。
由於本人對qt的網路程式設計塊還不熟悉,所以不會對介面進行設計。
初步設想:有多個客戶端和乙個伺服器端。簡單功能是兩個客戶端通過伺服器端通訊,或者多對客戶端通過伺服器通訊(併發),類似於一對一聊天;複雜功能是多個客戶端通過伺服器通訊,類似於群聊(應該會用到廣播吧,額還沒看這部分);後期可以結合資料庫實現註冊、登入功能。
涉及內容:tcp/ip通訊 多執行緒 廣播
客戶端初步流程圖:
簡單聊天室
include include include include include include include include include include pthread t thread 2 void send msg void ip msg if connect sockfd,struct ...
Linux UDP簡單聊天室
伺服器端 include include include include include include include include int sockfd 0 建立結構體用來存放客戶端資訊 typedef struct node node t node t link head node t h ...
go 簡單聊天室
package main import fmt net strings time 建立使用者結構體型別 type cline struct var onlinemap map string cline 建立全域性 channel 傳遞使用者訊息 var message make chan strin...