Namespaces
Variants

_Exit

From cppreference.net
Definiert im Header <stdlib.h>
void _Exit ( int exit_code ) ;
(seit C99)
(bis C11)
_Noreturn void _Exit ( int exit_code ) ;
(seit C11)
(bis C23)
[ [ noreturn ] ] void _Exit ( int exit_code ) ;
(seit C23)

Verursacht ein normales Programmende, ohne die Ressourcen vollständig zu bereinigen.

An at_quick_exit() oder atexit() übergebene Funktionen werden nicht aufgerufen. Ob offene Streams mit ungeschriebenen gepufferten Daten geleert, offene Streams geschlossen oder temporäre Dateien entfernt werden, ist implementierungsdefiniert.

Wenn exit_code 0 oder EXIT_SUCCESS ist, wird ein implementierungsdefinierter Status zurückgegeben, der eine erfolgreiche Beendigung an die Host-Umgebung signalisiert. Wenn exit_code EXIT_FAILURE ist, wird ein implementierungsdefinierter Status zurückgegeben, der eine nicht erfolgreiche Beendigung anzeigt. In allen anderen Fällen wird ein implementierungsdefinierter Statuswert zurückgegeben.

Inhaltsverzeichnis

Parameter

exit_code - Exit-Status des Programms

Rückgabewert

(keine)

Beispiel

#include <stdlib.h>
#include <stdio.h>
/* _Exit does not call functions registered with atexit. */
void f1(void)
{
    puts("pushed first");
}
void f2(void)
{
    puts("pushed second");
}
int main(void)
{
    printf("Enter main()\n");
    atexit(f1);
    atexit(f2);
    fflush(stdout);   /* _Exit may not flush unwritten buffered data */
    _Exit(0);
}

Ausgabe:

Enter main()

Referenzen

  • C17-Standard (ISO/IEC 9899:2018):
  • 7.22.4.5 Die _Exit-Funktion (S: 256)
  • C11-Standard (ISO/IEC 9899:2011):
  • 7.22.4.5 Die _Exit-Funktion (S: 352)
  • C99-Standard (ISO/IEC 9899:1999):
  • 7.20.4.4 Die _Exit-Funktion (S: 316)

Siehe auch

verursacht abnormale Programmbeendigung (ohne Bereinigung)
(Funktion)
verursacht normale Programmbeendigung mit Bereinigung
(Funktion)