Namensräume
Varianten
Aktionen

EXIT_SUCCESS, EXIT_FAILURE

Von cppreference.com
Definiert im Header <stdlib.h>
#define EXIT_SUCCESS /*implementation defined*/
#define EXIT_FAILURE /*implementation defined*/

Die Makros EXIT_SUCCESS und EXIT_FAILURE expandieren zu ganzzahligen konstanten Ausdrücken, die als Argumente für die Funktion exit (und somit als Rückgabewerte für die main-Funktion) verwendet werden können und den Status der Programmausführung anzeigen.

Konstante Beschreibung
EXIT_SUCCESS erfolgreiche Ausführung eines Programms
EXIT_FAILURE erfolglose Ausführung eines Programms

Inhalt

[bearbeiten] Anmerkungen

Sowohl EXIT_SUCCESS als auch der Wert Null zeigen einen erfolgreichen Status der Programmausführung an (siehe exit), obwohl EXIT_SUCCESS nicht gleich Null sein muss.

[bearbeiten] Beispiel

#include <stdio.h>
#include <stdlib.h>
 
int main(void)
{
    FILE* fp = fopen("data.txt", "r");
    if (fp == NULL)
    {
       fprintf(stderr, "fopen() failed in file %s at line #%d", __FILE__, __LINE__);
       exit(EXIT_FAILURE);
    }
 
    /* Normal processing continues here. */
    fclose(fp);
    printf("Normal Return\n");
 
    return EXIT_SUCCESS;
}

Ausgabe

fopen() failed in file main.cpp at line #9

[bearbeiten] Referenzen

  • C23-Standard (ISO/IEC 9899:2024)
  • 7.22/3 Allgemeine Dienstprogramme <stdlib.h> (S: TBD)
  • C17-Standard (ISO/IEC 9899:2018)
  • 7.22/3 Allgemeine Dienstprogramme <stdlib.h> (S: 248)
  • C11-Standard (ISO/IEC 9899:2011)
  • 7.22/3 Allgemeine Dienstprogramme <stdlib.h> (S: 340)
  • C99-Standard (ISO/IEC 9899:1999)
  • 7.20/3 Allgemeine Dienstprogramme <stdlib.h> (S: 306)
  • C89/C90-Standard (ISO/IEC 9899:1990)
  • 4.10 Allgemeine Dienstprogramme <stdlib.h>

[bearbeiten] Siehe auch

C++ Dokumentation für EXIT_SUCCESS, EXIT_FAILURE