基於TCP協議的C S通訊

2021-08-20 12:07:37 字數 1716 閱讀 5609

一、環境

os:win10

ide:visual studio 2010

二、**

在同一解決方案下新建兩個win32控制台應用程式,專案名分別是server和client,分別在兩個專案的原始檔下新增server.cpp和client.cpp;

server.cpp

#include#include//#includeusing namespace std;

#pragma comment(lib,"ws2_32.lib")

void main()

{ wsadata wsadata;

socket oldsocket,newsocket;

int i=0;

//客戶socketaddr位址結構

int ilen=0;

//接收的資料長度

int irecvlen =0;

//接收來自使用者的資訊,即接收快取

char recvbuf[512];

//客戶和伺服器的socketaddr位址結構

struct sockaddr_in seraddr,clientaddr;

if(wsastartup(makeword(2,2),&wsadata)!=0)

{ cout<

#include#include//#includeusing namespace std;

#pragma comment(lib,"ws2_32.lib")

#define data_buffer 512 //傳送快取大小

void main()

{ wsadata wsadata;

socket sclient;

int i=0;

//傳送的資料長度

int isndlen;

//傳送緩衝區

char sndbuf[data_buffer];

//傳送快取初始化

memset(sndbuf,0,data_buffer);

char *serip="x.x.x.x";//隨著程式所在主機的位址改變而改變

int seriport=5050;

//伺服器端socket位址結構

struct sockaddr_in seraddr;

//填寫要連線的伺服器位址資訊

seraddr.sin_family=af_inet;

seraddr.sin_port=htons(seriport);

seraddr.sin_addr.s_addr=inet_addr(serip);

if(wsastartup(makeword(2,2),&wsadata)!=0)

{ cout

isndlen=send(sclient,sndbuf,sizeof(sndbuf),0);

if(isndlen==0)

return;

else if(isndlen==socket_error)

{cout<

三、結果

將server設為啟動專案,編譯執行;再將client設為啟動專案,編譯執行。執行結果如下:

基於TCP協議的WCF通訊

windows communication foundation wcf 是由微軟開發的一系列支援資料通訊的應用程式框架,可以翻譯為windows 通訊開發平台。從以下四個方面對wcf進行介紹 基於tcp協議的wcf通訊主要包含了以下三部分,分別為服務契約 公共介面ihelloservice 宿主程...

基於TCP協議的socket通訊

一 伺服器端 1 建立serversocket,即伺服器端的socket,繫結指定的埠,並偵聽此埠 serversocket server new serversocket 8888 2 呼叫accept 方法,開始偵聽,等待客戶端的連線,在未連線成功之前,處於阻塞狀態,返回的socket,用於與客...

基於TCP協議的程序間通訊

tcp協議是應用在傳輸層的協議。是一種面向連線的 可靠的協議。tcp協議的特點 1 面向位元組流。2 tcp是面向連線的運輸層協議 3 每一條tcp鏈結只能有兩個端點 4 tcp提供可靠交付的服務 5 tcp提供全雙工通訊 根據tcp協議三次握手,server一直處於監聽狀態,等接受到client的...