Irgendwas stimmt hier nicht!
-
Hallo!
Ich habe ein Passwort-eingabe-programm (^^) prgrammiert.
Aber es zeigt mir immer an das ich das pw falsch eingegeben habe, obwohl ich es richtig eingebe!
Hier der Code:#include <iostream> int main() { char Text[99] = "hallo"; int leer; char Pw[99]; std::cout<<"Geben sie bitte das Passwort ein: "; std::cin>>Pw; if (Pw == Text) { std::cout<<"Juhu geschafft"; std::cin>>leer; } if (Pw != Text) { std::cout<<"Falsch!"; std::cin>>leer; } }Vielen Dank schonmal!
-
if (Pw == Text)Vergleicht pointer nicht strings.
besserif ( strcmp(Pw,Text) == 0 )Kurt
-
Ahh vielen dank!!!
Hat super geklappt!!!!
-
Kleiner Tipp:
Du kannst unter deine #include-Anweisungen "using namespace std;" packen, dann musste nicht immer das std:: vor cout bzw. cin schreiben.
-
Das würde denn so aussehen:
#include <iostream> using namespace std; int main() { char Text[99] = "hallo"; int leer; char Pw[99]; cout<<"Geben sie bitte das Passwort ein: "; cin>>Pw; if ( strcmp(Pw,Text) == 0 ) { cout<<"Juhu geschafft"; cin>>leer; } if (Pw != Text) { cout<<"Falsch!"; cin>>leer; } }Gruß
-
ma sollte den fehler vielleicht aus dem beispiel mal entfernen, auch wenn man was anderes demonstrieren will...
.MamboKurt