建立兩個工程檔案,server和client
#include
#include
#pragma comment(lib,"ws2_32.lib")
//靜態加入乙個lib檔案
#pragma warning(disable : 4996)
using
namespace std;
intmain()
/*繫結ip和埠*/
//配置監聽位址和埠
sockaddr_in addrlisten;
addrlisten.sin_family = af_inet;
//指定ip格式
addrlisten.sin_port =
htons
(8888);
//繫結埠號
addrlisten.sin_addr.s_un.s_addr = inaddr_any;
//表示任何ip service.sin_addr.s_addr = inet_addr("127.0.0.1");if(
bind
(listensocket,
(sockaddr*
)&addrlisten,
sizeof
(addrlisten)
)== socket_error)
/*開始監聽*/if(
listen
(listensocket,5)
== socket_error)
/*等待連線,連線後建立乙個新的套接字*/
socket revsocket;
//對應此時所建立連線的套接字的控制代碼
sockaddr_in remoteaddr;
//接收連線到伺服器上的位址資訊
int remoteaddrlen =
sizeof
(remoteaddr)
; cout <<
"等待連線..."
<< endl;
/*等待客戶端請求,伺服器接收請求*/
revsocket =
accept
(listensocket,
(sockaddr*
)&remoteaddr,
&remoteaddrlen)
;//等待客戶端接入,直到有客戶端連線上來為止
if(revsocket == invalid_socket)
else
cout <<
"客服端與伺服器建立連線成功:"
<<
inet_ntoa
(remoteaddr.sin_addr)
<< endl;
char
* senddata =
newchar
[100];
char revdata[
255]=""
;while(1
)//傳送資料
send
(revsocket, senddata,
strlen
(senddata),0
);cout <<
"伺服器: "
<< senddata << endl;
}closesocket
(listensocket)
;wsacleanup()
;}
#include
#include
#pragma comment(lib,"ws2_32.lib")
//靜態加入乙個lib檔案
#pragma warning(disable : 4996)
using
namespace std;
intmain()
//定義要連線的伺服器位址
sockaddr_in addrconserver;
addrconserver.sin_family = af_inet;
addrconserver.sin_port =
htons
(8888);
addrconserver.sin_addr.s_un.s_addr =
inet_addr
("127.0.0.1");
if(connect
(clientsocket,
(sockaddr*
)&addrconserver,
sizeof
(addrconserver)
)== socket_error)
else
printf
("客戶端建立連線成功,準備傳送資料!\n");
//傳送資料
char sendbuf[
255]=""
;while(1
)else
cout <<
"客戶端: "
<< sendbuf << endl;
//接收服務端資料
/*通過建立的連線進行通訊*/
int res;
char revserdata[
100]=""
; res =
recv
(clientsocket, revserdata,
sizeof
(revserdata),0
);if(res >0)
else
if(res ==0)
printf
("connection closed\n");
else
printf
("recv failed: %d\n"
,wsagetlasterror()
);}}
C socket同步通訊
源博主鏈結 關於c socket通訊,分為同步和非同步通訊,本文簡單介紹一下同步通訊。通訊兩端分別為客戶端 client 和伺服器 server 1 建立乙個socket對像 2 用socket對像的connect 方法以上面建立的endpoint對像做為引數,向伺服器發出連線請求 3 如果連線成功...
C Socket非同步通訊
由於平時使用unity開發,所以相對其他的程式語言,對c 比較了解,所以寫了乙個c s的socket非同步通訊程式。目前只是在c 中測試,未來會接入unity3d,這個只是我個人用來進行學習用的,所以大家不必在意使用哪個語言做後端伺服器開發更好 一些說明 1.伺服器連線池 class conn 初始...
c socket 同步開發小例子
這兩天在研究socket開發看了網上有很多這樣的例子,也寫了乙個類似的程式希望大家共同交流,環境vs2005 以下是伺服器端 伺服器端介面 form1.cs檔案 using system using system.collections.generic using system.componentm...