test12_2.txt

来自「Linux下的C语言编程」· 文本 代码 · 共 38 行

TXT
38
字号
#include "headfile.h"
#include <sys/socket.h>
#include <netinet/in.h>
#include <stdio.h>
#include <netdb.h>

int main(int argc,char **argv)
{
  	char ptr,*pptr;
    	char str[INET6_ADDRSTRLEN];
    	struct hostent *hptr;
	while(--argc>0)
	{
    		ptr=*(++argv);
    		if(hptr=gethostbyname(ptr)==NULL)
    		{
      			err_msg("gethostbyname call error:%s,%s\n",ptr,hstrerror(h_error));
      			continue;
    		}
    		printf("canonical name:%s\n",hptr->h_name);
    		for(pptr=hptr->h_aliases;*pptr!=NULL;pptr++)
      			printf("the aliases name is:%s\n",*pptr);
    		switch(hptr->h_addrtype)
    		{
      			case  AF_INET:
      			case  AF_INET6:
      				pptr=hptr->h_addr_list;
      				for(;*pptr!=NULL;pptr++)
        				printf("address:%s\n",inet_ntop(hptr->h_addrtype,*pptr,str,sizeof(str)));
      				break;
      			default:
        			err_sys("unknown addrtype");
      				break;
    		}
	}
	exit(0);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?