下面是一个面向连接的SOCKET实例,填入(n)处。 【说明】 代码实例中的服务器通过socket连接向客户端发送字符串'Hello,you are connected!'。只要在服务器上运行该服务器软件,在客户端运行客户软件,客户端就会收到该字符串。 客户端程序代码如下: include<stdio.h> include<stdlib.h> include<errno.h> include<string.h> include<netdb.h> include<sys/types.h> include<netinet/in.h> include<sys/socket.h> define SERVPORT 3333 define MAXDATASIZE 100 /*每次最大数据传输量*/ main(int argc, char*argv[]){ int sockfd, recvbytes; char buf[MAXDATASIZE]; stmct hostent*host; struct sockaddr_in serv_addr; if (1) { fprintf(stderr, 'Please enter the server's hostname!/n'); exit(1); } if<(host=gethostbyname(argv[1]))=NULL) { herror('gethostbyname出错!'); exit(1); } if ((sockfd = socket(AF_INET, (2), 0))=-1) { perror('socket创建出错!'); exit(1); } serv_addr.sin_family=AF_INET; serv_addr.sin_port=htons(SERVPORT); Serv_addr.sin_addr=*((structin_addr*)host→h_addr); bzero(&(serv_addr.sin_zero), 8); if(connect (3), (struct sockaddr *)&serv_addr, / sizeof(struct sockaddr))=-1) { perror('connect出错!'); exit(1); } if((recvbytes=recv (4), buf, MAXDATASIZE, 0))=-1) { perror('recv出错!'); exit(1); } buf[recvbytes]='/0'; pfintf('Received: %s', buf); close(sockfd); }