📄 client.c
字号:
#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <errno.h>#include <string.h>#include <netdb.h>#include <sys/types.h>#include <sys/socket.h>#include <netinet/in.h>#include <arpa/inet.h> #define MYPORT 3490#define MAXDATASIZE 100/* 用法:如:client 59.69.74.2 */ int main(int argc,char *argv[]){ int sockfd,numbytes; struct sockaddr_in server_addr; struct hostent *server; char buf[MAXDATASIZE]; if(argc!=2) { fprintf(stderr,"usages:client hostname\n"); exit(1); } if((server=gethostbyname(argv[1]))==NULL) { perror("gethostbyname"); exit(1); } if((sockfd=socket(AF_INET,SOCK_STREAM,0))==-1) { perror("socket"); exit(1); } //绑定服务器的IP和PORT; server_addr.sin_family=AF_INET; server_addr.sin_port=htons(MYPORT); server_addr.sin_addr=*((struct in_addr *)server->h_addr); //也可server_addr.sin_addr.s_addr=inet_addr(argv[1]); memset(&(server_addr.sin_zero),'\0',8); //也可bzero(&(server_addr.sin_zero),8); if(connect(sockfd,(struct sockaddr *)&server_addr,sizeof(struct sockaddr))==-1) { perror("connect"); exit(1); } if((numbytes=recv(sockfd,buf,MAXDATASIZE-1,0))==-1) { perror("recv"); exit(1); } buf[numbytes]='\0'; printf("Received:%s",buf); close(sockfd); return 0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -