Christoph: (C) Implizite Deklaration der Funktion »strdup«

Beitrag lesen

Moin.

Aber ich bin mir nicht ganz sicher, wie ich mit der Warnung "own_ls2.c:53: Warnung: Implizite Deklaration der Funktion »strdup«" umgehen soll. Die Warnung sagt zwar schon alles, aber was bedeutet, dass strdup impilzit deklariert ist?

Der Compiler bechwert sich, da strdup() nirgendwo deklariert wurde. Aus historischen Gründen nimmt er aber an, dass die Funktion eine Integer-Wert zurückliefert, d.h. eine nicht-deklarierten Funktion wird bei Verwendung implizit als int () deklariert.

Um den Fehler zu beseitigen, binde den Header string.h ein, in dem die mit str... beginnenden Funktionen der Standardbibliothek zu finden sind.

Christoph