使用C語言函數解析域名

使用C語言函數解析域名

前段時間工作需求中要對域名解析,找了相關資料發現C語言有一個函數可以直接解析域名,下面寫的一個demo,只解析單個IP域名,直接上代碼,如下:

#include 
#include 
#include 
#include 
#include 
 
#include 
#include 
#include 

void codedns(char *str_url)
{
 extern int h_errno;
 struct hostent *h;
 struct in_addr in;
 struct sockaddr_in addr_in;
 
 h = gethostbyname(str_url);
 if(h == NULL)
 {
 printf("%s\n",hstrerror(h_errno));
 }
 else
 {
 memcpy(&addr_in.sin_addr.s_addr,h->h_addr,4);
 in.s_addr=addr_in.sin_addr.s_addr;
 printf("域名:%s\n",h->h_name);
 printf("type:%d\n",h->h_addrtype);
 printf("域名解析結果:%s\n",inet_ntoa(in));
 }

}

int main(int argc,char **argv)
{
 char hostname[40];
 printf("input hostname:");
 scanf("%s",hostname);
 getchar();
 
 codedns(hostname);

 return 0;
}


分享到:


相關文章: