Befehl zum Beenden des kompletten Programms



  • Hey Leute, jetzt begegnet ihr warscheinlich der dümmsten Frage in diesem Forum:

    Gibt es eine Möglichkeit das komplette Programm in einer Switch-Anweisung zu beenden. Als Beispiel:

    #include <stdio.h>
    #include <conio.h>
    main()
    {
    int eingabe;
    scanf("%i",&eingabe);
    switch(eingabe)
     {
     case '1': (BEFEHL); break;
     case '2': (BEFEHL); break;
     case '3': (BEFEHL); break;
     case '4': (BEFEHL); break;
     default: (BEFEHL UM DAS KOMPLETTE PROGRAMM ZU BEENDEN; SODASS DER NACHFOLGENDE CODE NICHT AUSGEFÜHRT WIRD)
     }
    NACHFOLGENDER CODE;
    }
    

    Soll heißen: in ➡ case 1-4 wird durch ➡ break; ja nur die Switch-Anweisung abgebrochen und ➡ NACHFOLGENDER CODE ja noch ausgeführt. Gibt es einen Befehl, der zum Beispiel bei ➡ default das komplette Programm beendet und nicht nur die Switch-Anweisung, sodass ➡ NACHFOLGENDER CODE nicht ausgeführt wird?

    Danke im Voraus für alle Antworten

    Phynix Firebird



  • exit(0);
    


  • Ääähm? Direkt in main() ? ➡ return



  • Th69 schrieb:

    exit(0);
    

    Gehts auch irgendwie in C?



  • Das ist C!?



  • besteht ein Unterschied bzw. wo zu return
    so weit Ich weiss ist die Aufgabe von return ebenfalls das Verlassen einer Funktion ?



  • return ist ein statement welches einen Wert der Funktion zurückgibt.
    exit() ist ein system call welcher den ausführenden Prozess terminiert.

    #include <stdio.h>
    #include <stdlib.h>
    
    void foo(){
        printf("foo\n");
        exit(0);
    }
    
    int main(){
        foo();
        printf("bar\n");
    }
    

    Die Ausgabe wäre:

    foo
    

    Wenn anstelle des exit(0) ein return verwendet wird, wäre die Ausgabe wie folgt:

    foo
    bar
    


  • Danke, habs durch das Quelltextbeispiel verstanden ! !



  • Wenn ich das Programm beenden will dann verwende ich immer folgendes:

    Close();
    

    Gruss Renato


Log in to reply