www.pudn.com > tcpclient.rar > tcpclient.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;
sockaddr_in ServerAddr;
DWORD StartSock()
{
WSADATA WSAData;
if(WSAStartup(MAKEWORD(2,2),&WSAData)!=0)
{
printf("sock init fail!\n");
return -1;
}
ServerAddr.sin_family=AF_INET;
ServerAddr.sin_addr.s_addr =inet_addr("219.245.176.35");
ServerAddr.sin_port=htons(RECV_PORT);
return 1;
}
DWORD CreateSocket()
{
sock=socket(AF_INET,SOCK_STREAM,0);
if((sock==SOCKET_ERROR))
{
printf("sock create fail");
WSACleanup();
return -1;
}
return 1;
}
DWORD CallServer()
{
CreateSocket();
if(connect(sock,(struct sockaddr*)&ServerAddr,
sizeof(ServerAddr))==SOCKET_ERROR)
{
printf("connect fail\n");
closesocket(sock);
return -1 ;
}
return 1;
}
DWORD TCPSend(char data[])
{
int length;
length=send(sock,data,strlen(data),0);
if(length<=0)
{
printf("send data error!\n");
closesocket(sock);
WSACleanup();
return -1;
}
return 1;
}
int main()
{
char buff[80];
char buf[80];
int num,i;
StartSock();
while(CallServer()==-1);
printf("connect ok!\n");
printf("press 'Enter' key to start!");
getchar();
for(;;)
{
printf("input the number of message to send:(0-exit)");
memset(buff,0,80);
scanf("%d",&num);
if(num<=0) break;
gets(buf);
for(i=1;i<=num;i++)
{
printf("data%d ",i);
gets(buf);
sprintf(buff,"data%d %s ",i,buf);
//sprintf(buff,"data%d ",i);
//printf(buff);
//printf("data%d ",i);
//printf("\n");
TCPSend(buff);
Sleep(100);
}
}
return 0;
}