Provided by: manpages-de-dev_0.5-2ubuntu1_all bug

BEZEICHNUNG

       perror - gib eine Systemfehlermeldung aus

BEZEICHNUNG

       #include <stdio.h>

       void perror(const char *s);

       #include <errno.h>

       const char *sys_errlist[];
       int sys_nerr ;

BESCHREIBUNG

       Die    Funktion    perror()    erzeugt    eine    Meldung    auf    der
       Standardfehlerausgabe, die den zuletzt aufgetretenen Fehler beschreibt,
       der   während   eines   Systemaufrufs  oder  einer  Bibliotheksfunktion
       aufgetreten ist.  Der Argumentstring s wird zuerst  ausgegeben,  danach
       ein  Doppelpunkt  und  ein Leerzeichen und danach die Meldung mit einem
       Zeilenvorschub.  Um eine maximale Nützlichkeit zu erreichen sollte  der
       Argumentstring  den  Namen  der  Funktion  enthalten, in dem der Fehler
       aufgetreten ist.  Die Fehlernummer wird aus der externen Variable errno
       entnommen,  die  gesetzt  wird  wenn  ein  Fehler  auftritt, aber nicht
       gelöscht wird, wenn Aufrufe getätigt werden, die keinen Fehler liefern.

       Die  globale  Fehlerliste  sys_errlist[] mit Index errno kann verwendet
       werden, um die Fehlermeldungen ohne den Zeilenumbruch zu erhalten.  Der
       größte  gültige  Index für sys_errlist[] ist sys_nerr -1.  Vorsicht ist
       geboten, wenn direkt  auf  diese  Liste  zugegriffen  wird,  denn  neue
       Fehlerwerte sind eventuell noch nicht hinzugefügt worden.

       Wenn  ein Systemaufruf fehlschlägt, gibt er normalerweise -1 zurück und
       setzt die Variable errno auf einen Wert,  der  beschreibt,  was  schief
       lief.  (Diese  Werte  können  in  <errno.h>  gefunden  werden.)   Viele
       Bibliotheksfunktionen verhalten sich genauso.   Die  Funktion  perror()
       übersetzt  diesen  Fehlercode  in  eine für Menschen lesbare Form.  Man
       beachte, dass errno nach erfolgreichem Aufruf einer Bibliotheksfunktion
       undefiniert  ist: Der Aufruf kann die Variable aber sehrwohl verändern,
       auch wenn er erfolgreich ist, zum Beispiel,  wenn  die  Routine  intern
       weitere   Bibliotheksfunktionen  verwendet,  die  fehlgeschlagen  sind.
       Daher sollte  der  Wert  von  errno  gesichert  werden,  wenn  auf  den
       fehlgeschlagenen Aufruf nicht sofort ein Aufruf von perror() folgt.

KONFORM ZU

       ANSI C, POSIX

SIEHE AUCH

       errno(2), strerror(3).

                                17. Januar 1996                      PERROR(3)