If gibt nur Else raus ^^



  • Moin zusammen!

    Ich hab mir jetzt die Tuts bis If und Else durchgelesen und das klappt ja alles wunderbar! Jetzt habe ich probiert ein einfaches Script zu erstellen das nur einen Unterschied zum Tutorialscript hat:

    #include <iostream>
    #include <string>
    
    int main()
    {
    	char Wort1[10];
    	char Wort2[10];
    
    	strcpy( Wort2, "ja" );
    
    	std::cout << "Bitte gebe hier ein Wort ein --> ";
    	std::cin  >> Wort1;
    
    	if( Wort1 == Wort2 )
    	{
    		std::cout << "Das Wort ist gleich mit der Programmierung!\n";
    	}
    	else
    	{
    		std::cout << "Das Wort ist nicht gleich mit der Programmierung!\n";
    	}
    
    	return 0;
    }
    

    Also der Sinn ist, wenn man "ja" eingibt, dann soll der IF Wert aktiviert werden und wenn man was anderes als "ja" eingibt, dann soll halt der ELSE Wert aktiviert werden. Das Problem ist nur, dass immernur der ELSE Wert aktiviert wird.

    Danke im Voraus!

    MfG Darthshoot



  • Du vergleichst Pointer und nicht Textinhalt.



  • Und um dein Problem zu lösen, kannst du entweder std::string verwenden (damit lässt es sich einfacher rechnen als mit char[]) oder deine Strings per strcmp() vergleichen.



  • #include <iostream>
    #include <string>
    using namespace std;
    
    int main()
    {
        string Wort;
    
        cout << "Bitte gebe hier ein Wort ein --> ";
        cin  >> Wort;
    
        if(Wort == "ja" )
        {
            cout << "Das Wort ist gleich mit der Programmierung!\n";
        }
        else
        {
            cout << "Das Wort ist nicht gleich mit der Programmierung!\n";
        }
    
        return 0;
    }
    

    Verwende strings wenn du sie schon includest, und vergiss den namespace nicht!



  • Jo cool danke! 😃
    Jetzt kanns ja weiter gehen ^^


Anmelden zum Antworten