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>.

GNU                                              8. August 2015                                        ASSERT(3)