LINUX.ORG.RU

где у меня руки кривые?


0

0

потребовалось тут такую программульку написать,
дык где я неправ?
первый раз пишу под сеть, и под линух вообще.. :)

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

int main(int argc, char *argv[])
{
struct hostent *a;

gethostbyaddr(argv[1], 40, AF_INET);

printf("\n\n%s\n\n",a->h_name);

return(0);
}

gethostbyaddr возвращает null,
на экран вообще ничего не выводится...

anonymous

Re: где у меня руки кривые?


Может тебе нужен gethostbyname() ?

Рекомендую: Unix Socket FAQ: http://www.lcg.org/sock-faq/

...и в частности оттуда:

3.1. How do I convert a string into an internet address?

Также не мешает прочесть все FAQ, тем более, что к ним есть
архивчик с исходниками примеров:
http://www.lcg.org/sock-faq/examples.tar.gz,

Ilja.

anonymous ()

Re: где у меня руки кривые?

It's work struct hostent *host=malloc(sizeof(struct hostent)); unsigned long address; address = addr; host = gethostbyaddr((char *)&address,4,AF_INET);

s0mbre ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.