📄 client4.cpp
字号:
#include"Winsock.h"
#include"Windows.h"
#include"stdio.h"
//#include"stdafx.h"
//#include"ioctl.h"
#pragma comment(lib,"wsock32.lib")
#define RECV_PORT 2000
#define SEND_PORT 3000
SOCKET sock;
DWORD StartSock()
{
WSADATA WSAData;
// sockaddr_in ClientAddr;
BOOL optval=TRUE;
//DWORD mode;
if(WSAStartup(MAKEWORD(2,2),&WSAData)!=0) //初始化套接字
{
printf("sock init fail!\n");
return(-1);
}
sock=socket(AF_INET,SOCK_DGRAM,0);
if(sock==SOCKET_ERROR)
{
printf("sock create fail!\n");
WSACleanup();
return(-1);
}
// ClientAddr.sin_family=AF_INET; //填充本地地址
// ClientAddr.sin_addr.s_addr=htonl(INADDR_ANY);
// ClientAddr.sin_port=htons(SEND_PORT);
// if(bind(sock,(struct sockaddr FAR *)&ClientAddr,sizeof(struct sockaddr_in))==SOCKET_ERROR)
// {
// printf("sock bind error code!");
// closesocket(sock);
// WSACleanup();
// return(-1);
// }
return(1);
}
DWORD UDPSend(char data[])
{
char Buff[80];
int length;
int alength;
int i;
struct sockaddr_in Server;
Server.sin_family=AF_INET; //填充目的方地址
Server.sin_addr.s_addr=inet_addr("59.74.24.138");
Server.sin_port=htons(RECV_PORT);
length=sendto(sock,data,strlen(data),MSG_DONTROUTE,(struct sockaddr *)&Server,sizeof(Server));
if(length<=0)
{
printf("send data error!\n");
closesocket(sock);
WSACleanup();
return(-1);
}
alength=sizeof(Server);
length=recvfrom(sock,Buff,80,0,(struct sockaddr *)&Server,&alength);
//接收对方返换的数据
for(i=0;i<length;i++)
printf("%c",Buff[i]);
printf("\n");
return(1);
}
int main()
{
char buff[80];
int i;
StartSock();
printf("press any key to continue!");
getchar();
for(i=0;i<50;i++)
{
sprintf(buff,"data%d",i);
UDPSend(buff);
Sleep(100);
}
getchar();
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -