Provided by: manpages-de-dev_1.11-1_all bug

BEZEICHNUNG

       assert - Bricht das Programm ab, wenn der Prüfausdruck falsch ergibt.

ÜBERSICHT

       #include <assert.h>

       void assert(scalar expression);

BESCHREIBUNG

       Ist  das  Makro  NDEBUG definiert, wenn das letzte Include für <assert.h> erfolgt, erzeugt
       das Makro assert() keinen Code und bewirkt gar  nichts.  Anderenfalls  wird  assert()  das
       Programm  abbrechen,  wenn  die Auswertung von expression falsch ergibt, also das Ergebnis
       gleich Null ist. assert() gibt dann eine Meldung auf  der  Standardfehlerausgabe  aus  und
       ruft abort(3) auf, um das Programm abzubrechen.

       Dieses  Makro  hat den Zweck, die Programmierer bei der Fehlersuche in ihren Programmen zu
       helfen. Die Meldung »assertion failed in file foo.c, function do_bar(), line  1287«  hilft
       dem Anwender nicht weiter.

RÜCKGABEWERT

       Es wird kein Wert zurückgegeben.

ATTRIBUTE

       Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.

       ┌──────────────┬───────────────────────┬─────────┐
       │SchnittstelleAttributWert    │
       ├──────────────┼───────────────────────┼─────────┤
       │assert()      │ Multithread-Fähigkeit │ MT-Safe │
       └──────────────┴───────────────────────┴─────────┘

KONFORM ZU

       POSIX.1-2001,  POSIX.1-2008,  C89, C99. In C89 muss expression ein int sein, sonst ist das
       Verhalten nicht definiert. In C99 darf expression jeden skalaren Typ annehmen.

FEHLER

       assert() ist ein Makro. Wenn der geprüften Ausdruck Seiteneffekte  hat,  ändert  sich  das
       Verhalten  des  Programms  abhängig  davon,  ob NDEBUG definiert ist oder nicht. Dies kann
       sporadische Fehler verursachen, die bei aktivierter Debug-Option nicht auftreten.

SIEHE AUCH

       abort(3), assert_perror(3), exit(3)

KOLOPHON

       Diese Seite  ist  Teil  der  Veröffentlichung  4.04  des  Projekts  Linux-man-pages.  Eine
       Beschreibung  des  Projekts,  Informationen,  wie  Fehler gemeldet werden können sowie die
       aktuelle Version dieser Seite finden sich unter http://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die deutsche Übersetzung dieser Handbuchseite wurde von Ralf  Demmer  <rdemmer@rdemmer.de>
       und Martin Eberhard Schauer <Martin.E.Schauer@gmx.de> erstellt.

       Diese  Übersetzung  ist  Freie  Dokumentation;  lesen  Sie  die GNU General Public License
       Version  3  oder  neuer  bezüglich  der  Copyright-Bedingungen.  Es  wird  KEINE   HAFTUNG
       übernommen.

       Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-
       Mail an <debian-l10n-german@lists.debian.org>.