vc 網路通訊B

2021-05-24 22:41:18 字數 1729 閱讀 8356

1、伺服器端

建立套接字--------socket socket(  int af,  int type,  int protocol);

繫結套接字到本地位址和埠上------int bind(  __in    socket s,  __in   const struct sockaddr* name,  __in   int namelen);

將套接字設為監聽模式,準備接受請求--------int listen( __in   socket s,  __in    int backlog);

等待客戶端請求,當接受連線請求後,返回乙個新的對應於此次連線的套接字------socket accept(  __in    socket s,  __out         struct sockaddr* addr,  __in_out      int* addrlen);

利用accept函式返回的套接字(裡面有客戶端的ip位址和埠號)進行通訊-----傳送資訊int send(

socket s,

const char far* buf,

int len,

int flags

);       --------------------接受資訊int recv(  socket s,  char far* buf,  int len,  int flags);

等待另一客戶端請求

關閉套接字

2、客戶端

建立套接字-----socket

向伺服器發出連線請求-----int connect(  socket s,  const struct sockaddr far* name,  int namelen);

進行通訊----send 和 recv

關閉套接字

二、基於upd(面向無連線)的socket

1、伺服器端

建立套接字-----socket

繫結位址和埠------bind

資料處理------接收資料  int recvfrom(

__in          socket s,

__out         char* buf,

__in          int len,

__in          int flags,

__out         struct sockaddr* from,

__in_out      int* fromlen

);      -------------- 傳送資料 int sendto(

__in          socket s,

__in          const char* buf,

__in          int len,

__in          int flags,

__in          const struct sockaddr* to,

__in          int tolen

);關閉套接字

客戶端建立套接字-----socket

向伺服器傳送資料和接收資料 recvfrom/sendto

關閉套接字

不要忘記在開始的時候匯入socket庫------int wsastartup(

__in          word wversionrequested,

__out         lpwsadata lpwsadata

);和引入標頭檔案#include

vc 網路通訊A

一 c 伺服器端 根據環境稍加改動 如下 include include include include using namespace std pragma comment lib,ws2 32.lib void main if lobyte wsadata.wversion 1 hibyte w...

C 網路通訊

c 網路通訊 一 伺服器端程式 10.17 1.建立伺服器端socket 1 使用socket類 建立伺服器socket物件 socket objs new socket 引數 使用ipendpoint類設定伺服器ip位址和埠號 或使用dns類 ipaddress serip ipaddress.p...

Winsock網路通訊

winsock網路通訊 這裡我希望和大家 一下winsock網上通訊的程式,由於網際網路的普及,越來越多的程式具有了在網上與其他程式通訊的功能.其實所有這些功能都建立在winsock介面之上,應用程式執行大多數網路通訊的基本物件稱為套介面或軟插口 socket 使用mfc winsocket類新增網...