重構阻塞式客戶端程序代碼

     在這幾個月中閱讀和編寫了大量的套接字程序,所以對套接字 程序的編寫也有了新的認識現在這裏分享出來與大家交流一下,不足之處還望大家指正。

    這裏的示例程序是修改自 Winsocket入門教程一:多線程阻塞式服務器和阻塞式客戶端程序(TCP) 中的客戶端程序。相對於原來的程序,主要進行了以下幾個方面的處理:

    1.添加了更好的錯誤處理代碼。使用GOTO語句將錯誤處理放到一起,可以使錯誤處理的代碼更利於維護,並且減少代碼的重複(Code duplicate)

    2.使用微軟推薦的函數getaddrinfo函數獲取連接地址,不過冒似使用這種方法要寫的代碼更多。

    3.發送和接收時使用循環發送和接收,以處理一次髮送或者接收不完的情況。

    示例代碼如下

   

    

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章