xxxx18一60岁hd中国/日韩女同互慰一区二区/西西人体扒开双腿无遮挡/日韩欧美黄色一级片 - 色护士精品影院www

資源簡介

一個簡單的socket通訊程序, 包括服務端和客戶端程序。建立客戶端和客戶端c++空項目,分別添加socketClient.cpp和sockServer.cpp, 根據注釋配置,編譯生成后就可以執行。客戶端程序在visual studio 2015和2013上編譯通過,服務端程序在visual studio 2015和2008上編譯通過。網上的一些程序在編譯時會出錯,或者運行時會中斷,希望這個程序對你會有所幫助。

資源截圖

代碼片段和文件信息

#include?
#include?
#include?
#include?“Ws2tcpip.h“

using?namespace?std;
#pragma?comment(lib?“ws2_32.lib“)

//visual?studio?2015上通過
int?main(int?argc?char*?argv[])
{
/*設置服務端的IP與Port*/
char?*?serverip?=?“192.168.50.216“;
int?svrport?=?5099;
WORD?sockVersion?=?MAKEWORD(2?2);
WSADATA?data;

/*Windows?Sockets?Asynchronous的啟動命令*/
if?(WSAStartup(sockVersion?&data)?!=?0)
{
return?0;
}

/*設定服務器地址?退出時輸入exit*/
in_addr?ipv4addr;
InetPton(AF_INET?serverip?&ipv4addr);
sockaddr_in?serAddr;
serAddr.sin_family?=?AF_INET;
serAddr.sin_addr?=?ipv4addr;
serAddr.sin_port?=?htons(svrport);
//serAddr.sin_addr.S_un.S_addr?=?inet_addr(serverip);
while?(true)?{
SOCKET?sclient;
string?str;
int?count?=?0;
int?ret?=?0;
char?recData[255];
/*接收用戶輸入信息*/
printf(“input?your?message:?“);
getline(cin?str);
if?(str.length()?==?0)?{
continue;
}
/*exit就退出*/
if?(str.compare(“exit“)?==?0)?break;

/*獲得socket通道*/
sclient?=?socket(AF_INET?SOCK_STREAM?IPPROTO_TCP);
if?(sclient?==?INVALID_SOCKET)
{
printf(“invalid?socket!\n“);
continue;
}
/*連接*/
if?(connect(sclient?(sockaddr?*)&serAddr?sizeof(serAddr))?==?SOCKET_ERROR)
{??/*連接失敗*/
printf(“connect?error?!\n“);
closesocket(sclient);
continue;
}

/*發送到服務端*/
const?char?*?sendData?=?str.data();
count?=?send(sclient?sendData?strlen(sendData)?0);
if?(count?==?-1)?{
printf(“send?data?error。\n“);
}

/*接收服務端的輸出*/
ret?=?recv(sclient?recData?255?0);
if?(ret>0)?{
recData[ret]?=?0x00;
printf(“received:?“);
printf(recData);
printf(“\n“);
}
}
/*終止Winsock?2?DLL?(Ws2_32.dll)*/
WSACleanup();
return?0;
}

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????2258??2017-05-11?09:15??socketServer.cpp
?????文件????????1826??2017-05-11?09:12??socketClient.cpp

評論

共有 條評論