Wenn es sich dabei um std::strings handelt, dann ist ein Vergleich mit == moeglich.
Bei char* sollte man strcmp benutzen:
C++:
char* foo="foo"; char* bar="bar";
if (strcmp(foo, bar) == 0) { printf("Die Strings sind gleich\n"); }
[windalfmode] Es muss natuerlich
C++:
if (!strcmp(foo, bar))
heissen
[/windalfmode] -- All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925)Dieser Post wurde am 07.01.2005 um 20:09 Uhr von typecast editiert.
Danke fuer die schnelle Antwort aber wenn ich dieses Programm Kompiliere und ich ein Wort eingebe erscheint eine Fehlermeldung(Dieses Programm wird aufgrund eines Fehlers geschlossen...)! Hier mal der Quellcode(ist sinnlos, dient auch nur als 'Uebung'):
C++:
#include <iostream> #include <conio.h>
usingnamespace std;
char *Wort1, *Wort2;
int main() { char *Name = newchar[251]; char *Wort = newchar[251]; cout<<"Bitte gib ein Wort ein: "; cin>>Wort1; cout<<"Bitte gib noch ein Wort ein: "; cin>>Wort2; if (Wort1 == Wort2) { cout<<"Das war 2x dasselbe!\n"; } return0; getch(); }
Jemand koennte mir bitte sagen wie ich es anders und vor allem besser machen kann! Danke schon mal im Vorraus! Gruß Endzeitapostel
Ok, in dem Fall greift das mit strcmp. Allerdings solltest du wenn du schon C++ schreibst einen std::string verwenden. -- All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925)
Ist mir schon klar, aber du bist immer derjenige, der dann anfaegt zu schreien -- All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925)