64,648
社区成员
发帖
与我相关
我的任务
分享
//Sever
#include <Windows.h>
#include <iostream>
using namespace std;
int main()
{
WSADATA m_data;
sockaddr_in Sevaddr_in,Cliaddr_in;
if(WSAStartup(MAKEWORD(2,2),&m_data)!=0)
{
cout<<"Init socket library failed! "<<endl;
return -1;
}
SOCKET SeverSocket=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
SOCKET CliSocket;
Sevaddr_in.sin_addr.S_un.S_addr=htonl(INADDR_ANY);
Sevaddr_in.sin_family=AF_INET;
Sevaddr_in.sin_port=htons(6000);
if(SeverSocket==INVALID_SOCKET)
{
cout<<"Create socket failed!"<<endl;
}
int n=bind(SeverSocket,(sockaddr*)&Sevaddr_in,sizeof(Sevaddr_in));
if(n!=0)
cout<<"Bind failed!"<<endl;
if(listen(SeverSocket,5)!=0)
{
cout<<"Listen failed!"<<endl;
}
while(true)
{
int length=sizeof(Cliaddr_in);
CliSocket=accept(SeverSocket,(sockaddr*)&Cliaddr_in,&length);
char *Sendbuff=new char[100];
Sendbuff="";
sprintf(Sendbuff,"%s","Welcome!");
//cin.getline(Sendbuff,sizeof(Sendbuff));;
char *recvbuff=new char[100];
recvbuff="";
send(CliSocket,Sendbuff,sizeof(Sendbuff)+1,0);
recv(CliSocket,recvbuff,sizeof(recvbuff)+1,0);
cout<<recvbuff<<endl;
}
closesocket(SeverSocket);
WSACleanup();
return 0;
}
//Client
#include <Windows.h>
#include <iostream>
using namespace std;
int main()
{
WSADATA data;
if(WSAStartup(MAKEWORD(2,2),&data)!=0)
{
cout<<"Init socket library failed!"<<endl;
return -1;
}
sockaddr_in Sevaddr_in;
Sevaddr_in.sin_addr.S_un.S_addr=inet_addr("127,0,0,1");
Sevaddr_in.sin_family=AF_INET;
Sevaddr_in.sin_port=htons(6000);
SOCKET CliSocket=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
if(CliSocket==INVALID_SOCKET)
{
cout<<"Create socket failde!"<<endl;
}
int x=connect(CliSocket,(sockaddr*)&Sevaddr_in,sizeof(Sevaddr_in));
if(x==SOCKET_ERROR)
{
cout<<"Connect failed!"<<endl;//这里总失败!
}
char *Sendbuff=new char[100];
Sendbuff="";
char *recvbuff=new char[100];
recvbuff="";
recv(CliSocket,recvbuff,sizeof(recvbuff)+1,0);
cout<<recvbuff<<endl;
cin.getline(Sendbuff,sizeof(Sendbuff));
send(CliSocket,Sendbuff,sizeof(Sendbuff)+1,0);
closesocket(CliSocket);
WSACleanup();
return 0;
}
#include <Winsock2.h>