gethostbyname_r(), andnetdir_getbyname()are implemented in terms of the same internal library function. This function obtains the system-wide source lookup policy based on theinetfamily entries innetconfig(4)and thehosts:entry innsswitch.conf(4). Similarly,gethostbyaddr(),gethostbyaddr_r(), andn...
printf(" alias:%s/n",*pptr); /* 根据地址类型,将地址打出来 */ switch(hptr->h_addrtype) { case AF_INET: case AF_INET6: pptr=hptr->h_addr_list; /* 将刚才得到的所有地址都打出来。其中调用了inet_ntop()函数 */ for(;*pptr!=NULL;pptr++) printf(" address:%s/n", inet_ntop(h...
printf("official hostname: %s\n", hptr->h_name); for (pptr = hptr->h_aliases; *pptr != NULL; pptr++) printf("\talias: %s\n", *pptr); switch (hptr->h_addrtype) { case AF_INET: pptr = hptr->h_addr_list; for ( ; *pptr != NULL; pptr++) printf("\taddress: %s...
#include netdb.h>int gethostbyname_r(Name,Htent,Ht_data)const char *Name,struct hostent *Htent,struct hostent_data *Ht_data; 說明 此函數會內部呼叫gethostbyname子常式,並將gethostbyname子常式傳回的值儲存至主機結構。 參數 項目說明 名稱指向主機名稱 (這是常數)。
gethostbyname_r函数是一个用于获取主机名对应的IP地址的函数,其用法如下: gethostbyname_r(char *name, struct hostent *ret, char *buf, size_t buflen, struct hostent **result, int *h_errnop); 其中,name参数是要查询的主机名,ret参数是返回的主机信息结构体,buf参数是用于存储主机信息结构体的内存缓冲...
在Linux中使用gethostbyname_r函数可以用于获取主机名对应的IP地址。该函数是线程安全的,可以在多线程环境下使用。 gethostbyname_r函数的使用步骤如下: 1. 包含头...
gethostbyname 获取网络主机项(entry),其参数是主机名。执行的是对DNS系统A记录的查询(通过本地主机名查DNS IP地址信息,优先查找的是本地/etc/hosts文件), 只能返回IPv4地址。不可重入,其可重入版本是gethostbyname_r。 下面对这个系列的函数,进行更详细介绍: ...
int gethostbyname_r(const char *name, struct hostent *ret, char *buf, size_t buflen, struct hostent **result, int *h_errnop); 1. 2. 3. 4. 5. 6. 示例 gethostname获取本地host name,gethostbyname通过host name得到本地ip地址信息。
查找主机名最基本的函数是gethostbyname(),如果调用成功,就返回一个指向hostent结构的指针,该结构中含有所查寻主机的所有IPv4地址。getaddrinfo()函数能够同时处理IPv4地址和IPv6地址。 函数原型: #include<netdb.h>externinth_errno;structhostent*gethostbyname(constchar*name);structhostent{char*h_name;/* 查询...