Problem If Anweisung



  • Hallo,
    bin gerade dabei mir C++ beizubringen.
    Habe mir mal eine einfache If Anweisung erstellt. Nur leider funktioniert sie nicht. Es soll das Datum des Systems ausgegeben werden danach der erste Buchstbe des Arrays in der Anweisung verglichen werden und dann die dementsprechende Ausgabe.
    Vielleicht kann mir ja jemand helfen!
    Wäre sehr dankbar
    Gruß Jens

    #include <cstdlib>
    #include <iostream>

    using namespace std;

    int main (int argc, char *argv[])

    {
    char D;
    char Monat[12]; //Bilden eines Arrays mit der Länge 5
    Monat[1] = __DATE__[0]; //In das erste Feld des Arrays wird der erste Werte der Datumsanzeige geschrieben,__DATE__ ist eine fegelegte Variable vom System

    cout << __DATE__ << endl << Monat[1] << endl;

    if (Monat[1] = D)
    {
    cout << "Dezember";
    }
    else
    {
    cout << "Hallo";
    }
    system("PAUSE");
    return EXIT_SUCCESS;
    }



  • 1. Du hast D keinen Wert zugewiesen und versuchst dann damit zu vergleichen. Das kann nur schief gehen
    2. Ein Vektor-Index beginnt bei 0
    3. == ist ein Vergleich, = eine Zuweisung
    4. Vergiss system("PAUSE") und EXIT_SUCCESS

    #include <iostream>
    
    int main()
    {
    	char december = 'D';
    	char month[12];
    
    	month[0] = __DATE__[0];
    
    	if(month[0] == december)
    		std::cout << "Dezember";
    	else
    		std::cout << "Hallo";
    
    	// Schließen verhindern
    	int z;
    	std::cin >> z;
    }
    

    MfG



  • Danke für die schnelle Lösung


Anmelden zum Antworten