Форум сетевых администраторов
Показаны 2 сообщений на этой странице

Форум сетевых администраторов (http://netadmin.ws/forum/index.php)
- C/C++ (http://netadmin.ws/forum/forumdisplay.php?forumid=8)
-- gethostbyname() (http://netadmin.ws/forum/showthread.php?threadid=10699)


Помещено Lesnix 30-05-2005 в 11:16:

gethostbyname()

Hi again, dear ppl
Помогите начинающему.
В программе необходимо отрезолвить IP-адрес хоста по его имени.

code:

	
char* hostname;
hostent* host;
	
hostname="codenet.ru";
host=gethostbyname(hostname);
if (host!=NULL) //вот это условие почему-то пролетает, т.е. host == NULL 
{
  int   nAdapter = 0;
	while (	host->h_addr_list[nAdapter]  )
	{
		struct   sockaddr_in   adr;
		memcpy(&adr.sin_addr,host->h_addr_list[nAdapter],host->h_length); 
		printf("\nIP: %s\n",inet_ntoa(adr.sin_addr));
		nAdapter++;
	}
}


Функция gethostbyname() вроде бы должна возвращать указатель на начало массива указателей IP-адресов...
Но этого почему-то не происходит...
Помогите, плз

или, может быть, можно узнать IP узла как-то иначе ?


Помещено Holy Cheater 01-06-2005 в 15:31:

Функция возвращает указатель на структуру hostent..
Может попробуешь обявить как struct hostent *host ?


Формат времени GMT. Текущее время 23:56.
Показаны 2 сообщений на этой странице

Powered by: vBulletin Version 2.2.4
Copyright © Jelsoft Enterprises Limited 2000, 2001.