Модераторы: xvr
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> IP Адрес, Скажите функцию которая переводит 
:(
    Опции темы
proman
Дата 26.4.2006, 20:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 12.4.2006

Репутация: нет
Всего: нет



Скажите функцию которая переводит адрес типа localhost в ip 127.0.0.1 
PM MAIL   Вверх
kirjanov
Дата 26.4.2006, 20:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 326
Регистрация: 22.1.2006
Где: Dark wood of erro r

Репутация: 3
Всего: 15



man gethostbyname 
PM MAIL   Вверх
proman
Дата 27.4.2006, 11:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 12.4.2006

Репутация: нет
Всего: нет



Спасибо попробую! 
PM MAIL   Вверх
proman
Дата 27.4.2006, 14:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 12.4.2006

Репутация: нет
Всего: нет



Пишу такой код а комп. ошибку вдает

char*Addr="localhost.localdomain";
struct sockaddr_in cli_addr;
 struct hostent *hostinfo;
                        cli_addr.sin_family = AF_INET;
                        cli_addr.sin_port = htons (25);
                        hostinfo = gethostbyname(Addr);
                        cli_addr.sin_addr=*(struct in_addr *)hostinfo.h_addr;

Добавлено @ 14:38 
Ошибка в последней строке 
PM MAIL   Вверх
kirjanov
Дата 27.4.2006, 18:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 326
Регистрация: 22.1.2006
Где: Dark wood of erro r

Репутация: 3
Всего: 15



1. структура hostent не содержит поля h_addr, а имеет следующие члены:

char  *h_name      Official name of the host.
char **h_aliases   A pointer to an array of pointers to alternative host names, terminated by a null pointer.
int    h_addrtype  Address type.
int    h_length    The length, in bytes, of the address.
char **h_addr_list A pointer to an array of pointers to network addresses (in network byte order) for the host, terminated by a null pointer.

2. если ты обьявил struct hostent *hostinfo, то обращаться к полю структуры надо не через точку(.), а через (->), т.е hostinfo->hostent_struct_member
3. что-то не пойму что ты хочешь сделать, если преобразовать имя в ascii в двоичную форму, то используй inet_pton(); 
PM MAIL   Вверх
proman
Дата 27.4.2006, 20:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 12.4.2006

Репутация: нет
Всего: нет



Я пытаюсь из домена localhost.localdomain получить IP 127.0.0.1 
PM MAIL   Вверх
bilbobagginz
Дата 28.4.2006, 02:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

Репутация: 4
Всего: 317



читать:
1. man nsswitch.conf
2. man hosts
3. man resolver

пока. 


--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
gruy
Дата 30.4.2006, 11:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 48
Регистрация: 4.6.2004

Репутация: нет
Всего: 3



Вот из примера
Код

  /* Convert from strings to numbers.  */
  hostinfo = gethostbyname (argv[1]);
  if (hostinfo == NULL)
    return 1;
  else
    name.sin_addr = *((struct in_addr *) hostinfo->h_addr);
 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr.

 
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема »


 




[ Время генерации скрипта: 0.0742 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.