abort
Von cppreference.com
< c | Programmierung
| Definiert im Header <stdlib.h> |
||
void abort(void); |
(bis C11) | |
| _Noreturn void abort(void); |
(seit C11) (bis C23) |
|
| [[noreturn]] void abort(void); |
(seit C23) | |
Verursacht eine abnormale Programmbeendigung, es sei denn, SIGABRT wird von einem an signal übergebenen Signalhandler abgefangen und der Handler gibt nicht zurück.
An atexit() übergebene Funktionen werden nicht aufgerufen. Ob offene Ressourcen wie Dateien geschlossen werden, ist implementierungsabhängig. Ein implementierungsabhängiger Status wird an die Host-Umgebung zurückgegeben, der eine erfolglose Ausführung anzeigt.
Inhalt |
[bearbeiten] Parameter
(keine)
[bearbeiten] Rückgabewert
(keine)
[bearbeiten] Anmerkungen
POSIX spezifiziert, dass die Funktion abort() das Blockieren oder Ignorieren des SIGABRT-Signals überschreibt.
Einige Compiler-Intrinsics, z.B. __builtin_trap (gcc, clang und icc) oder __fastfail/__debugbreak (msvc), können verwendet werden, um das Programm so schnell wie möglich zu beenden.
[bearbeiten] Beispiel
Führen Sie diesen Code aus
Ausgabe
error opening file data.txt in function main()
[bearbeiten] Referenzen
- C17-Standard (ISO/IEC 9899:2018)
- 7.22.4.1 The abort function (S. 255)
- C11-Standard (ISO/IEC 9899:2011)
- 7.22.4.1 The abort function (S. 350)
- C99-Standard (ISO/IEC 9899:1999)
- 7.20.4.1 The abort function (S. 315)
- C89/C90-Standard (ISO/IEC 9899:1990)
- 4.10.4.1 The abort function
[bearbeiten] Siehe auch
| verursacht normalen Programmabbruch mit Bereinigung (Funktion) | |
| registriert eine Funktion, die beim Aufruf von exit() aufgerufen werden soll (Funktion) | |
| (C11) |
verursacht eine normale Programmbeendigung ohne vollständige Bereinigung (Funktion) |
| C++-Dokumentation für abort
| |