您的位置:首页 > 其它

windows socket 客户端

2017-01-09 17:14 302 查看
#include<iostream>
#include<winsock2.h>
using namespace std;
#pragma comment(lib,"ws2_32.lib")
#define PORT 8888
#define IP_ADDRESS "127.0.0.1"
int main(){

WSADATA Ws;
SOCKET ClientSocket;
struct sockaddr_in ServerAddr;
int Ret = 0;
int AddrLen = 0;
HANDLE hThread = NULL;
char SendBuffer[MAX_PATH];
cout << MAX_PATH << endl;
if(WSAStartup(MAKEWORD(2,2),&Ws)!=0){
cout << "Init Windows Socket Failed::" << GetLastError() << endl;
return -1;
}
ClientSocket = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
if(ClientSocket == INVALID_SOCKET){

cout << "Create Socket Failed:: " << endl;
return -2;
}

ServerAddr.sin_family = AF_INET;
ServerAddr.sin_addr.s_addr = inet_addr(IP_ADDRESS);
ServerAddr.sin_port=htons(PORT);
memset(ServerAddr.sin_zero,0,8);

Ret = connect(ClientSocket,(struct sockaddr*)&ServerAddr,sizeof(ServerAddr));
if(Ret == SOCKET_ERROR){

cout << "Connect Error::" << GetLastError() << endl;
return -3;

}
else{
cout << "连接成功!" << endl;
}
while(true){
cin.getline(SendBuffer,sizeof(SendBuffer));
Ret = send(ClientSocket,SendBuffer,(int)strlen(SendBuffer),0);
if(Ret == SOCKET_ERROR){
cout << "Send Info Error :: " << GetLastError() << endl;
break;
}

}
closesocket(ClientSocket);
WSACleanup();

return 0;
}
服务器端已经启动
客户端连接::127.0.0.1:12299
接收到的客户端信息为:hello
接收到的客户端信息为:你好啊!

260
连接成功!
hello
你好啊!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: