gethostbyname的2种用法得到IP(字符型和bigendian整数型)

BOOL DomainToIP(char *Domain,char *toIP)  //由域名得到IP地址 
 { 
 	HOSTENT *host_entry; 
 	host_entry=gethostbyname(Domain); 
 	if(host_entry!=0) 
 	{ 
 		sprintf(toIP,"%d.%d.%d.%d", 
 			(host_entry->h_addr_list[0][0]&0xff), 
 			(host_entry->h_addr_list[0][1]&0xff), 
 			(host_entry->h_addr_list[0][2]&0xff), 
 			(host_entry->h_addr_list[0][3]&0xff)); 
 	} 
 	else 
 	{ 
 		return FALSE; 
 	} 
 	return TRUE; 
 }


void Init(char*hostname,unsigned short port)
	{
		WSAStartup(0x0202,&m_wsa);
		struct hostent* host;
		host =gethostbyname(hostname);
		if(host==NULL)
		{
			MessageBox(NULL,TEXT("unable to resolve host name"),
				TEXT("warning"),MB_OK);
			PostQuitMessage(0);
		}
		m_IP=*((unsigned long*)host->h_addr);
		m_port=htons(port);
		m_addr.sin_port=m_port;
		m_addr.sin_family=AF_INET;
		m_addr.sin_addr.s_addr=m_IP;
	};



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值