fehlermeldung bei socket prog

barton4

barton4

Tripel-As
Ich wollte folgendes programm, was ich gerad erst angefangen habe uebersetzen:

#include <sys/socket.h>
#include <netinet/in.h>
#include <stdio.h>

int main()
{

int sock_0;
struct sockaddr_in sockaddr0;

sock_0 = socket(AF_INET, SOCK_STREAM, 0);
if (sock_0 == -1)
{
printf("error_00: socket failed");

}

sockaddr0.sin_family=AF_INET;
sockaddr0.sin_addr.s_addr=inet_addr("127.0.0.1");
}

und als fehlermeldung von g++ erhalt ich:

amd:~/scripts/sock#gcc scan.cpp
sock.cpp: In function `int main()':
sock.cpp:23: error: `inet_addr' undeclared (first use this function)
sock.cpp:23: error: (Each undeclared identifier is reported only once for each

bei gcc:

amd:~/scripts/sock#g++ scan.cpp
scan.cpp: In function `int main()':
scan.cpp:23: implicit declaration of function `int inet_addr(...)'


weis jemand an was das liegen kann
so weit ich das kapiert hab sagt der compiler das die funktion nicht definiert ist
aber das ist sie ja eigentlich in der socket.h oder????
 
hi...

Dir fehl ein Header...
Code:
#include <arpa/inet.h>
Viel erfolg weiterhin...

ciao Exi
 
Moin!
Bei neuen Programmen ist es besser auf inet_addr zu verzichten, da diese Funktion bei einem Fehler INADDR_NONE zurückliefer, was üblichweise 0xFFFFFFFF (255.255.255.255) ist. Weiterhin ist dein Programm von IPv4 abhänig. Stattdessen sollte man inet_pton verwenden.

blue
 

Ähnliche Themen

Unix Webserver mit HTML Seite erstellen

C HTTP request

g++ kompilieren schlägt fehl

Windows clients können nicht mehr auf lange laufendes System zugreifen

socket() blockiert

Zurück
Oben