基于C++的socket通信實例

基于C++的socket通信實例

ID:37755423

大?。?4.06 KB

頁數(shù):6頁

時間:2019-05-30

基于C++的socket通信實例_第1頁
基于C++的socket通信實例_第2頁
基于C++的socket通信實例_第3頁
基于C++的socket通信實例_第4頁
基于C++的socket通信實例_第5頁
資源描述:

《基于C++的socket通信實例》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、剛剛學windows編程,所以想寫學習筆記,這是一個簡單的Socket程序例子,開發(fā)環(huán)境是vc6:首先是TCPserver端:[cpp]?viewplaincopy1.#include?"stdafx.h"??2.#include???3.#include???4.??5.#pragma?comment(lib,"ws2_32.lib")??6.??7.int?main(int?argc,?char*?argv[])??8.{??9.????//初始化WSA??10.????WORD?sockVersion?=?MAKEWORD(2,2);?

2、?11.????WSADATA?wsaData;??12.????if(WSAStartup(sockVersion,?&wsaData)!=0)??13.????{??14.????????return?0;??15.????}??16.??17.????//創(chuàng)建套接字??18.????SOCKET?slisten?=?socket(AF_INET,?SOCK_STREAM,?IPPROTO_TCP);??19.????if(slisten?==?INVALID_SOCKET)??20.????{??21.????????printf("socket?error?!");??22.

3、????????return?0;??23.????}??24.??25.????//綁定IP和端口??26.????sockaddr_in?sin;??27.????sin.sin_family?=?AF_INET;??28.????sin.sin_port?=?htons(8888);??29.????sin.sin_addr.S_un.S_addr?=?INADDR_ANY;???30.????if(bind(slisten,?(LPSOCKADDR)&sin,?sizeof(sin))?==?SOCKET_ERROR)??31.????{??32.????????printf

4、("bind?error?!");??33.????}??34.??1.????//開始監(jiān)聽??2.????if(listen(slisten,?5)?==?SOCKET_ERROR)??3.????{??4.????????printf("listen?error?!");??5.????????return?0;??6.????}??7.??8.????//循環(huán)接收數(shù)據(jù)??9.????SOCKET?sClient;??10.????sockaddr_in?remoteAddr;??11.????int?nAddrlen?=?sizeof(remoteAddr);??12.????

5、char?revData[255];???13.????while?(true)??14.????{??15.????????printf("等待連接...");??16.????????sClient?=?accept(slisten,?(SOCKADDR?*)&remoteAddr,?&nAddrlen);??17.????????if(sClient?==?INVALID_SOCKET)??18.????????{??19.????????????printf("accept?error?!");??20.????????????continue;??21.????????

6、}??22.????????printf("接受到一個連接:%s?r",?inet_ntoa(remoteAddr.sin_addr));??23.??????????24.????????//接收數(shù)據(jù)??25.????????int?ret?=?recv(sClient,?revData,?255,?0);?????????26.????????if(ret?>?0)??27.????????{??28.????????????revData[ret]?=?0x00;??29.????????????printf(revData);??30.????????}??31.??3

7、2.????????//發(fā)送數(shù)據(jù)??33.????????char?*?sendData?=?"你好,TCP客戶端!";??34.????????send(sClient,?sendData,?strlen(sendData),?0);??35.????????closesocket(sClient);??36.????}??37.??????38.????closesocket(slisten);??39.????WSACleanup();??40.

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。