1 Pluspunkt 0 Minuspunkte

Ich möchte eine IP Adresse in eine lesbare Form umwandeln und anzeigen.

// IP-Adresse in lesbare Form umwandeln
char ip_address[INET_ADDRSTRLEN];
if (inet_ntop(AF_INET, &(addr.sin_addr), ip_address, INET_ADDRSTRLEN) == NULL) {
    perror("Fehler beim Umwandeln der IP-Adresse");
    exit(EXIT_FAILURE);
}

aber der Compiler meckert irgendwas wegen der Funktion inet_ntop().

 warning: implicit declaration of function 'inet_ntop'

Was muss ich einbinden dazu? Ich habe winsock2.h eingebunden.

von  

2 Antworten

0 Pluspunkte 0 Minuspunkte

Eine "implicit declaration" tritt dann auf, wenn der Compiler die Funktion nicht kennt, weil sie noch nicht deklariert wurde oder der zugehörige Header nicht eingebunden wurde. Du musst wahrscheinlich noch ws2tcpip.h einbinden.

#include <Ws2tcpip.h>

von  
0 Pluspunkte 0 Minuspunkte

Du kannst die Funktion inet_ntoa verwenden.

char* ip_address = inet_ntoa(addr.sin_addr);

von