Switch Problem



  • Hi

    zuerstmal der Code

    int eingabe_auswerten(int i_neu, int i_laden, int i_schliessen, int i_speichern, int i_bearbeiten, int i_suchen, int i_loeschen, int i_beenden)
    {
    
        int i_auswahl, i_exit = 0;
        char c_auswahl;
        while(i_exit==0)
        {
            printf("\nBitte waehlen Sie einen Menu-Punkt (zurueck zum Menu mit 3): ");
            scanf("%c", &c_auswahl);
            if (c_auswahl > 33)
            {
            i_auswahl = eingabe_pruefen(c_auswahl)-48;
            switch(i_auswahl)
            {
            case 1:
                neu();
                break;
            case 2:
                oeffnen_menu();
                break;
            case 3:
                menu_ausgeben(1,1,0,0,0,1,1,1);
                break;
            case 4:
                speichern();
                break;
            case 5:
                break;
            case 6:
                suchen();
                break;
            case 7:
                loeschen();
                break;
            case 8:
                printf("\nProgramm wurde beendet\n");
                i_exit=1;
                break;
            default:
                printf("Auswahl nicht definiert\n");
                break;
            }
    
            scanf("%c", &c_auswahl);
            }
    
        }
            return 0;
    }
    

    Im Funktionskopf übergebe ich 8 Werte, die entweder 1 oder 0 sind.
    Nun sieht mein Problem so aus: Nur wenn z.b. i_neu == 1 ist , soll case 1: aktiviert sein, ansonsten nicht. usw bis zu i_beenden.

    Hab schon versucht, ne if bedingung vor jedes case zu setzen, hat aber nicht funktioniert

    Wie kann man das lösen

    Vielen Dank

    [ Dieser Beitrag wurde am 11.11.2002 um 20:39 Uhr von Bernd_K editiert. ]



  • Hi,

    mach doch eine if-Abfrage innerhalb einer case-Verzweigung:

    switch ( ... )
     {
           case    1:    if ( ... )
                            //tue was
                         break;
     }
    

    mfg
    v R


Anmelden zum Antworten