wort gleich dem wort aus der datei?
-
hi..
kann mir jemand weiter helfen?..
char ein; //.... cout << "Eingabe: "; cin >> ein; const char *s; //... while(*s!='\0') { ifstream datei("nummer.txt"); while (datei) { datei >> a.name >> a.tele; if(ein==a.name) //..error C2040: '==' : 'int' unterscheidet //sich von 'char [3]' in bezug auf die Anzahl // vorgenommener Dereferenzierungen :confused: { cout << a.tele; } } } //....
naja... er soll abfragen, ob 'ein'(das eingegebene wort) gleich dem wort ist... was grade 'a.name' ist
...nur er zeigt da nen fehler an.... kA..wie ich den deuten soll/kann...
*g* bitte einfach erklären^^
thx
-
Hallo,
das kannst du so nicht machen, denn das eine ist ein Zeiger auf eine Zeichenkette
und das andere ist ein einfaches zeichen.Du koenntest das Programm folgendermassen aendern:
std::string ein; //.... cout << "Eingabe: "; cin >> ein; const char *s; //... while(*s!='\0') { ifstream datei("nummer.txt"); while (datei) { datei >> a.name >> a.tele; if(ein==a.name) { cout << a.tele; } } }
Fuer std::string ist der op ==(const char
ueberladen und du kannst so
C-Zeichenketten mit std::string-Objekten vergleichen (oder besser, mit dem
Inhalt von std::string-Objekten).hoffe ich konnte helfen.
mfg
v R