#include <netinet/in.h>
#include <stdio.h>
#include <string.h>
#include <sys/socket.h>
#define LETH 1024
#define IP "130.10.3.135"
int main()
{
int sockfd, n;
char recvline[LETH];
char sendline[LETH];
struct sockaddr_in servaddr;
if ((sockfd = socket(AF_INET, SOCK_STREAM, 0)) < 0)
{
printf("create socket error.\n");
return -1;
}
printf("create socket.\n");
memset(&servaddr, 0, sizeof(servaddr));
servaddr.sin_family = AF_INET;
servaddr.sin_port = htons(6666);
if(inet_pton(AF_INET, IP, &servaddr.sin_addr) <= 0)
{
printf("inet_pton error %s\n", IP);
close(sockfd);
return -1;
}
if (connect(sockfd, (struct sockaddr *)&servaddr, sizeof(servaddr)) < 0)
{
printf("connect socket error.\n");
close(sockfd);
return -1;
}
printf("connect socket.\n");
while(1)
{
fgets(sendline, LETH, stdin);
if (send(sockfd, sendline, strlen(sendline), 0) < 0)
{
printf("send msg error.\n");
close(sockfd);
return -1;
}
printf("send msg: %s\n", sendline);
if (strstr(sendline, "quit"))
{
printf("client exit.\n");
break;
}
n = recv(sockfd, recvline, LETH, 0);
recvline[n] = '\0';
printf("recv msg from server: %s\n", recvline);
}
close(sockfd);
return 0;
}