C++入門到放棄(三),加法服務器

前言

前面我們已經實現了一個EchoServer,今天我們繼續來寫其他的東西。例如一個客戶端,還有一個加法服務器。

運行效果

Client端:


思考

相比服務端Socket,客戶端的Socket要簡單的多。我們不難想到,一個客戶端Socket需要哪些元素。

  • Socket的相關屬性:協議族等
  • 服務器的地址,Host|Post,并連接
  • 發送與接收

代碼

  • 42行,申請一個Socket。
  • 46-51行,格式化服務器的地址與端口,inet_pton,這是將字符串的host格式化為協議地址。
  • 54-57行,連接服務器。必須要對應的服務器已經在Listen的狀態
  • 59-67行,讀數據,并用send發送給服務端,并從服務端recv對應的結果。



    對于服務器來說,我們只要在先前的echo框架中進行修改即可。

需要注意的是,這種直接傳一個結構體必須客戶端與服務器的結構體完全一致。并且受到網絡傳輸中大端小端的影響。所以,這種不經序列化的傳輸其實是不安全的。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容