Hallo, habe seit kurzem,heute mit C++ angefangen und Frage mich warum, oder wie ich es anders definieren muss=
char what;
cin >> what;
if(what >> "Wort")
{
}
Error: Der Ausdruck muss einen integralen Typ oder einen Enumerationstyp aufweisen.
Hallo, habe seit kurzem,heute mit C++ angefangen und Frage mich warum, oder wie ich es anders definieren muss=
char what;
cin >> what;
if(what >> "Wort")
{
}
Error: Der Ausdruck muss einen integralen Typ oder einen Enumerationstyp aufweisen.
string what;
cin >> what;
if(strcmp(what,"Wort"))
So oder so ähnlich war das^^
Bekomme den Fail,
error C2664: 'strcmp': Konvertierung des Parameters 1 von 'std::string' in 'const char *' nicht möglich
Edit1,2,3:
//so z.B.
#include <iostream>
using namespace std;
int main()
{
char what[50];
cin >> what;
if(what == "Wort")
{ cout << "Korrekt :D" << endl; getchar(); }
else
{ cout << "Falsch D:" << endl; getchar(); }
return 0;
}
Also, wenn ich das so mache, dann beendet er direkt die Konsole .)
mach noch n cin.get(); oder ein getchar(); vor return 0;
statt return 0;
einfach System("Pause");
das funktioniert nur bei Dev-C oder wie das heißt glaube ich...
Wenn er/sie Visual C++ benutzt muss cin.get/getchar() ran
dann wirst du aber Probleme bekommen, weil du ja Enter gerückt hast
Geht auch bei V-C++.
Du kannst es auch so machen
return system("PAUSE");
//e Wobei das return jetzt hier nicht eine große Rolle spielt
Kann das jetzt gerade bitte jemand fertig posten?
gerade das funktioniert nur bei zahlen (habs selbst getestet^^)
Die if-Abfrage haut nicht hin... oder hab ich nen fehler gemacht? habs genauso...
Edit:
Hier die Lösung
#include <iostream>
using namespace std;
int main()
{
char what[50];
cin >> what;
if(!strcmp(what,"Wort"))
{
cout << "Richtig" << endl;
}
else
{ cout << "Falsch" << endl; }
getchar();
cin.get();
return 0;
}
Danke, klappt.
Pls Closen