Anmelden

Archiv verlassen und diese Seite im Standarddesign anzeigen : Probleme mit gethostbyname()



kappos
07-05-2006, 14:28
Hallo zusammen,
irgendwie hab ich Probleme mit gethostbyname().
Alles funktioniert soweit der Compiler meckert auch nicht.
jetzt ist die sache wenn ich die Funktion zb jetzt aufrufe:
hostname("localhost")
funktioniert einwandfrei bekomm dann 127.0.0.1
aber wenn ich zb hostname("www.fht-esslingen.de);
mach bekomm ich nicht die richtige ip sondern
-122.108.34.3

das minus ist völlig irre.......
wie kommt das denn zustande?

Hier mein Code:



int hostname(char * host)
{
struct hostent hostd;
hostd= * gethostbyname(host);
printf("Adresse lautet: %d.%d.%d.%d \n",
hostd.h_addr_list[0][0],
hostd.h_addr_list[0][1],
hostd.h_addr_list[0][2],
hostd.h_addr_list[0][3]);
return 0;
}





Gruss Felix

BLUESCREEN3D
07-05-2006, 15:37
Probier mal folgendes:

Jedes %d durch %u ersetzen und vor jedes "hostd.h_addr_list" ein (unsigned char) setzen.

kappos
07-05-2006, 16:03
dankeschön jetzt funktioniert es.....
ist auch klar ich sollte halt besser nachlesen ob es ein char ist oder ein unsigned char.
Dankeschön.

Gruss Felix