23,121
社区成员
发帖
与我相关
我的任务
分享
#include<stdlib.h>#include<stdlib.h>
#include<stdio.h>
#include<string.h>
#include<errno.h>
#include<sys/types.h>
#include<netinet/in.h>
#include<sys/socket.h>
#include<sys/wait.h>
#define SERVERPORT 8080
#define MAXDATA 100
int main(int argc,char *argv [])
{
int sockfd,recebytes;
char buf[MAXDATA];
struct hostent *host;
struct sockaddr_in serv_addr;
if(argc<2)
{
fprintf(stderr,"enter host mane\n");
exit(1);
}
if((host=gethostbyname(argv[1]))==NULL)
{
perror("get host name fail\n");
exit(1);
}
if((sockfd=socket(AF_INET,SOCK_STREAM,0))==-1)
{
perror("socket 创建失败\n");
}
serv_addr.sin_family=AF_INET;
serv_addr.sin_port=htons(SERVERPORT);
serv_addr.sin_addr.s_addr=INADDR_ANY;
bzero(&(serv_addr.sin_zero),8);
if(connect(sockfd,(struct sockaddr*)&serv_addr,sizeof(struct sockaddr))==-1)
{
perror("connect fail\n");
exit(1);
}
if((recebytes=recv(sockfd,buf,MAXDATA,0))==-1)
{
perror("connect fail\n");
exit(1);
}
buf[recebytes]='\0';
printf("receve:%s",buf);
close(sockfd);
}