青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

大龍的博客

常用鏈接

統(tǒng)計(jì)

最新評論

hostent結(jié)構(gòu)體

使用這個(gè)東西,首先要包含2個(gè)頭文件:
#include <netdb.h>
#include <sys/socket.h>

struct hostent *gethostbyname(const char *name);
這個(gè)函數(shù)的傳入值是域名或者主機(jī)名,例如"
www.google.com","wpc "等等。
傳出值,是一個(gè)hostent的結(jié)構(gòu)(如下)。如果函數(shù)調(diào)用失敗,將返回NULL。

struct hostent {
? char? *h_name;
? char? **h_aliases;
? int?? h_addrtype;
? int?? h_length;
? char? **h_addr_list;
? };
解釋一下這個(gè)結(jié)構(gòu):
其中,
? char *h_name 表示的是主機(jī)的規(guī)范名。例如
www.google.com 的規(guī)范名其實(shí)是 www.l.google.com
? char?? **h_aliases 表示的是主機(jī)的別名。
www.google.com 就是google他自己的別名。有的時(shí)候,有的主機(jī)可能有好幾個(gè)別名,這些,其實(shí)都是為了易于用戶記憶而為自己的網(wǎng)站多取的名字。
? int?? h_addrtype 表示的是主機(jī)ip地址的類型,到底是ipv4(AF_INET),還是ipv6(AF_INET6)
? int?? h_length 表示的是主機(jī)ip地址的長度
? int?? **h_addr_lisst 表示的是主機(jī)的ip地址,注意,這個(gè)是以網(wǎng)絡(luò)字節(jié)序存儲的。千萬不要直接用printf帶%s參數(shù)來打這個(gè)東西,會有問題的哇。所以到真正需要打印出這個(gè)IP的話,需要調(diào)用inet_ntop()。

const char *inet_ntop(int af, const void *src, char *dst, socklen_t cnt) :
這個(gè)函數(shù),是將類型為af的網(wǎng)絡(luò)地址結(jié)構(gòu)src,轉(zhuǎn)換成主機(jī)序的字符串形式,存放在長度為cnt的字符串中。
這個(gè)函數(shù),其實(shí)就是返回指向dst的一個(gè)指針。如果函數(shù)調(diào)用錯(cuò)誤,返回值是NULL。

?

下面是例程,有詳細(xì)的注釋。

#include <netdb.h>
#include <sys/socket.h>

int main(int argc, char **argv)
{
?char *ptr,**pptr;
?struct hostent *hptr;
?char str[32];
?/* 取得命令后第一個(gè)參數(shù),即要解析的域名或主機(jī)名 */
?ptr = argv[1];
?/* 調(diào)用gethostbyname()。調(diào)用結(jié)果都存在hptr中 */
?if( (hptr = gethostbyname(ptr) ) == NULL )
?{
??printf("gethostbyname error for host:%s\n", ptr);
??return 0; /* 如果調(diào)用gethostbyname發(fā)生錯(cuò)誤,返回1 */
?}
?/* 將主機(jī)的規(guī)范名打出來 */
?printf("official hostname:%s\n",hptr->h_name);
?/* 主機(jī)可能有多個(gè)別名,將所有別名分別打出來 */
?for(pptr = hptr->h_aliases; *pptr != NULL; pptr++)
??printf("? alias:%s\n",*pptr);
?/* 根據(jù)地址類型,將地址打出來 */
?switch(hptr->h_addrtype)
?{
??case AF_INET:
??case AF_INET6:
???pptr=hptr->h_addr_list;
???/* 將剛才得到的所有地址都打出來。其中調(diào)用了inet_ntop()函數(shù) */
???for(;*pptr!=NULL;pptr++)
????printf("? address:%s\n", inet_ntop(hptr->h_addrtype, *pptr, str, sizeof(str)));
???break;
??default:
???printf("unknown address type\n");
???break;
?}
?return 0;
}

posted on 2006-11-07 17:00 大龍 閱讀(22497) 評論(5)  編輯 收藏 引用

評論

# re: hostent結(jié)構(gòu)體 2007-04-15 22:55 楊帥

inet_ntop()好像windows和linux都沒有這個(gè)函數(shù)吧
我打印地址為:
printf("address: %s\n", inet_ntoa(*(in_addr*)(*pptr) ) );
總感覺有點(diǎn)麻煩:先把char*轉(zhuǎn)化為in_addr*,然后用inet_nota轉(zhuǎn)化為本地的字符串。
我有個(gè)疑問是,既然*pptr是char*,為什么對它直接打印會出現(xiàn)亂碼。
我覺的因該把h_addr_list定義為void**更好些  回復(fù)  更多評論   

# re: hostent結(jié)構(gòu)體[未登錄] 2007-11-19 16:07 yy

回復(fù):inet_ntop()好像windows和linux都沒有這個(gè)函數(shù)吧

是不是inet_ntoh()??  回復(fù)  更多評論   

# re: hostent結(jié)構(gòu)體 2008-01-10 13:29

請教:
1.這個(gè)hostent是在linux底下的結(jié)構(gòu)體嗎?
2.是不是網(wǎng)絡(luò)層在給數(shù)據(jù)包添加Ip包頭的時(shí)候,在填寫源IP字段時(shí)的依據(jù)也是這個(gè)hostent結(jié)構(gòu)體中的 char **h_addr_list ?
急切的想得到答復(fù),我的郵箱地址 : shaozy@snnu.edu.cn  回復(fù)  更多評論   

# re: hostent結(jié)構(gòu)體[未登錄] 2008-10-26 21:10 xixi

我覺得你關(guān)于inet_ntop()的作用理解錯(cuò)了:
It should be "similar to inet_ntoa()" but working with IPV4 and IPv6"
,besides, it used to map a 32-bit integer(an IP address in network byte order) to an ASCII string in dotted decimal format.  回復(fù)  更多評論   

# re: hostent結(jié)構(gòu)體[未登錄] 2010-03-07 11:32 bingo

printf(" address:%s\n", (char *)inet_ntop(hptr->h_addrtype, *pptr, str, sizeof(str)));

這樣把  回復(fù)  更多評論   


只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产精品综合不卡av| 午夜精品久久久久久久白皮肤| 日韩网站在线| 91久久精品视频| 一本大道久久a久久精品综合| 一本久久综合亚洲鲁鲁五月天| 一区二区三区偷拍| 欧美一级片在线播放| 久久久91精品国产一区二区三区 | aa亚洲婷婷| 亚洲午夜一区二区三区| 欧美在线资源| 欧美电影电视剧在线观看| 亚洲欧洲日产国码二区| 日韩一级大片| 久久精品国亚洲| 欧美日韩高清区| 国产日韩一区| 欧美一区二区成人6969| 免费欧美在线| 国产伦精品一区二区三区照片91 | 久久久久**毛片大全| 欧美啪啪一区| 国产在线精品一区二区中文| av不卡在线观看| 久久综合免费视频影院| 在线亚洲欧美| 欧美成人视屏| 一区二区在线观看视频在线观看| 亚洲免费观看高清在线观看 | 久久精品一区二区三区不卡| 欧美日本中文字幕| 国自产拍偷拍福利精品免费一| 在线亚洲成人| 欧美高清在线| 久久频这里精品99香蕉| 国产精品成人午夜| 亚洲精品自在久久| 蜜桃精品一区二区三区| 欧美一区=区| 国产精品欧美一区二区三区奶水| 日韩午夜免费| 欧美激情一区二区三区蜜桃视频| 欧美一区二区三区婷婷月色| 欧美午夜精品久久久久久孕妇| 亚洲日韩欧美视频一区| 免费亚洲一区二区| 久久久噜噜噜久噜久久| 国产一区二区在线观看免费| 欧美一级成年大片在线观看| 亚洲视频一区二区| 国产精品视频久久| 欧美亚洲三区| 午夜精品久久久久久久99水蜜桃 | 在线一区二区三区四区五区| 欧美片第一页| 一区二区三区你懂的| 亚洲精品在线免费| 欧美剧在线免费观看网站| 亚洲精品护士| 亚洲国产日韩在线| 欧美不卡视频一区发布| 欧美激情视频一区二区三区在线播放 | 久久青草久久| 久久久久女教师免费一区| 国产自产在线视频一区| 久久激情网站| 久久只有精品| 亚洲精品在线电影| 99热在线精品观看| 国产精品久久久久久久久久三级| 翔田千里一区二区| 久久国产夜色精品鲁鲁99| **欧美日韩vr在线| 亚洲精品欧洲| 国产精品网站在线观看| 老牛影视一区二区三区| 欧美黄色大片网站| 午夜精品福利一区二区三区av | 亚洲国产成人av在线| 亚洲国产成人在线| 国产精品家教| 噜噜噜噜噜久久久久久91| 欧美a级在线| 亚洲欧美www| 久久天堂成人| 亚洲淫性视频| 久久亚洲精品一区二区| av成人激情| 久久精精品视频| 亚洲视频精品| 久久琪琪电影院| 亚洲欧美日韩一区在线| 久久综合久久综合九色| 亚洲免费在线观看视频| 久久婷婷国产综合尤物精品| 亚洲欧美久久久| 蜜臀av性久久久久蜜臀aⅴ| 午夜精品福利一区二区蜜股av| 久久一区激情| 久久er精品视频| 欧美日韩国产色站一区二区三区| 久久久www免费人成黑人精品| 欧美成人激情视频| 久久天天躁狠狠躁夜夜爽蜜月| 欧美区一区二区三区| 麻豆精品视频在线| 国产日韩av一区二区| 日韩一级免费| 在线视频成人| 午夜精品久久久久99热蜜桃导演| 在线亚洲高清视频| 欧美大片网址| 欧美国产欧美综合| 尤物在线精品| 欧美一级一区| 香港久久久电影| 欧美三级电影网| 亚洲欧洲一区二区三区久久| 影音先锋中文字幕一区| 久久一区二区三区四区五区| 欧美日韩视频在线一区二区 | 亚洲美女在线看| 米奇777在线欧美播放| 久久久精彩视频| 国产精品中文在线| 亚洲性感激情| 先锋影音久久| 国产美女精品一区二区三区| 亚洲天堂网在线观看| 在线视频欧美一区| 欧美色区777第一页| 99精品久久免费看蜜臀剧情介绍| 亚洲日本激情| 欧美激情在线狂野欧美精品| 亚洲电影毛片| 亚洲狼人综合| 欧美日韩国产美女| 亚洲图片激情小说| 久久国产99| **欧美日韩vr在线| 欧美精品aa| 一区二区三区四区五区精品视频 | 亚洲国产三级| 99国产成+人+综合+亚洲欧美| 欧美激情中文字幕一区二区| 亚洲精品美女91| 亚洲影音先锋| 国产一区二区精品| 另类欧美日韩国产在线| 亚洲激情成人在线| 亚洲男人天堂2024| 国内精品视频一区| 麻豆9191精品国产| aa级大片欧美三级| 久久久久久久999精品视频| 在线观看福利一区| 欧美国产精品一区| 亚洲一区二区三区四区中文| 久久亚洲欧美国产精品乐播| 亚洲欧洲在线免费| 国产精品美女在线观看| 久久国产精品第一页| 亚洲国产欧美另类丝袜| 亚洲欧美一区二区三区在线 | 国产精品久久久久久模特 | 国产精品一区在线播放| 久久久久久久波多野高潮日日| 亚洲国产美女| 香蕉久久久久久久av网站 | 另类天堂av| 一区二区三区日韩| 一区二区三区无毛| 欧美日韩在线视频观看| 久久国产综合精品| 一区二区日韩欧美| 男人的天堂成人在线| 午夜一区不卡| 91久久线看在观草草青青| 国产精品激情| 欧美大片在线观看| 欧美一区二区三区男人的天堂 | 久久久久99| av不卡免费看| 亚洲国内高清视频| 久久一区二区三区国产精品| 亚洲一区二区三区在线看| 伊人久久大香线蕉av超碰演员| 国产精品va在线播放| 欧美风情在线观看| 久久精品国产一区二区三| 一区二区三区日韩在线观看 | 久久久精品性| 午夜激情久久久| 一本一本久久a久久精品综合妖精| 欧美电影免费观看网站| 美女精品国产| 玖玖精品视频| 另类图片综合电影| 久久综合激情|