#includetypedef struct sockaddr_in st;
typedef struct sockaddr sd;
#define SERVPORT 3333
#define MAXDATASIZE 100
int main(int argc,char *argv[])
{
int sockfd,recvbytes;
char buf[MAXDATASIZE];
struct hostent *host;
st servaddr;
if(argc<2){
fprintf(stdin,"please enter the sercer's hostname!\n");
exit(1);
}
if((host = gethostbyname(argv[1])) == NULL){
perror("gethostbyname error!");
exit(1);
}
if (sockfd = socket(AF_INET,SOCK_STREAM,0) == -1){
perror("socket creat error!");
exit(1);
}
servaddr.sin_family = AF_INET;
servaddr.sin_port = htons(SERVPORT);
servaddr.sin_addr = *((struct in_addr *)host->h_addr);
//inet_pton( AF_INET, "127.0.0.3", &servaddr.sin_addr );
bzero(&(servaddr.sin_zero),8);
if (connect(sockfd,(sd *)&servaddr,sizeof(sd)) == -1){
perror("connect error!");
exit(1);
}
if((recvbytes = recv(sockfd,buf,MAXDATASIZE,0)) == -1){
perror("receve error!");
exit(1);
}
buf[recvbytes] = '\0';
printf("receve:%s",buf);
close(sockfd);
}