📄 fuwuqi.cpp
字号:
#include "Winsock.h"
#include "windows.h"
#include "stdio.h"
#pragma comment(lib,"wsock32.lib")
#define RECV_PORT 2000
#define SEND_PORT 3000
SOCKET sock,sock1;
sockaddr_in ServerAddr;
sockaddr_in ClientAddr;
int Addrlen;
DWORD StartSock()
{
WSADATA WSAData;
if (WSAStartup(MAKEWORD(2,2),& WSAData)!=0)//初始化套接字
{
printf("sock init fail! \n");
return(-1);
}
return(1);
}
DWORD CreateSocket()
{
sock=socket(AF_INET,SOCK_STREAM,0);//创建套接字
if (sock==SOCKET_ERROR)
{
printf("sock create fail! \n");
WSACleanup();
return(-1);
}
ServerAddr.sin_family=AF_INET;//填充服务器地址及端口
ServerAddr.sin_addr.s_addr=htonl(INADDR_ANY);
ServerAddr.sin_port=htons(RECV_PORT);
if (bind( sock, (struct sockaddr FAR *) &ServerAddr,sizeof(ServerAddr)) == SOCKET_ERROR)// 绑定套接字
{
printf("bind is the error");
return(-1);
}
return(1);
}
DWORD ConnectProcess()
{
char buff[80];
Addrlen=sizeof(sockaddr_in);
if (listen( sock,5) <0)//置本地套接字为侦听模式
{
printf("Listen error");
return(-1);
}
printf("Listening...\n");
for (;;)
{
sock1 = accept( sock,(struct sockaddr FAR *) &ClientAddr,&Addrlen);//接受连接
for (;;)
{
memset(buff,0,80);
if (recv(sock1,buff,80,0)<=0)
{
break;
}
printf(buff);
printf("\n");
}
}
}
int main()
{
if (StartSock() ==-1)
return(-1);
if (CreateSocket() ==-1)
return(-1);
if (ConnectProcess() ==-1)
return(-1);
return(1);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -