long IP in lesbare IP umwandeln
-
Hallo zusammen,
könnt mir einer sagen wie ich eine long IP (bsp.: 1528274699)
in eine lesbare IP (192.178.168.25) umwandeln kann?Danke
-
1528274699 & 0xFF000000
1528274699 & 0x00FF0000
1528274699 & 0x0000FF00
1528274699 & 0x000000FF
-
Hilft mir nicht weiter....kann damit nichts anfangen.
Hab inet_ntoa gefunden aber VC++ kennt es nicht, muss man bestimmte header nützen?
-
hab das jetzt so
struct in_addr addrst; addrst.s_addr = longIp; MessageBox(inet_ntoa(addrst));aber die ip ist grad von hinten nach vorn

-
versuch mal
addrst.s_addr = ntohl(longIp);
-
DKlay schrieb:
Hilft mir nicht weiter....kann damit nichts anfangen.
Die binäre Darstellung von Zahlen ist dir bekannt? Wenn nicht solltest du dich mal damit beschäftigen. Dein long steht ja nicht als "1528274699" im Speicher, sondern eher als:
01011011 00010111 10011111 00001011 Binär 1.Byte | 2.Byte | 3.Byte | 4.Byte 5B 17 9F 0B Hexadezimal 91 . 23 . 159 . 11 Hexadezimal => DezimalWie rum die konkrete Anordnung für die Darstellung sind, kann ich jetzt aber nicht sagen (Würde aber mal auf IP: 91.23.159.11 tippen)...
-
ntohl schrieb:
versuch mal
addrst.s_addr = ntohl(longIp);Super, danke jetzt zeigt es die IP richtig an

vielen vielen dank
-
bei mir kommt auch 91.23.159.11 raus, aber du meintest ja es soll 192.178.168.25 rauskommen

-
hm schrieb:
bei mir kommt auch 91.23.159.11 raus, aber du meintest ja es soll 192.178.168.25 rauskommen

das hat er bestimmt nur als beispiel angebracht, um uns zu verdeutlichen was er haben will

-
hm schrieb:
bei mir kommt auch 91.23.159.11 raus, aber du meintest ja es soll 192.178.168.25 rauskommen

Ne 91.23.159.11 stimmt, denkfehler dachte bin lokal am testen aber ist ja IRC
