Bitte löschen
Hab ich einen Fehler mit dem ifstream
-
minder -
4. Dezember 2008 um 18:06 -
Geschlossen
-
-
Welchen Typ hat Input? Richtig, ein lokales ifstream-Objekt.
Welchen Typ hat NULL? NULL = 0, das ist ein Zeiger, die kannst du nicht so einfach vergleichen!Wenn du wirklich read verwenden möchtest, solltest du name auch als char* deklarieren, ich vermute bei dir einen string und das wird zu einem Speicherzugriffsfehler führen. Am einfachsten wäre es, den ">>"-Operator zu benutzen, ansonsten:
Codeifstream input ("Test.txt", ios::in); if(!input.is_open()) // Fehler int size = input.tellg(); char* cont = new char[size]; input.read(cont, size); string dateiinhalt(cont); delete cont; cont = 0;
Ungetestet...Für genauere Details zur Benutzung von ifstream, schau einmal hier.
Viele liebe Grüße
The User -
Hallo The User
Ich hab noch ne Frage:
Ich hab einer Funktion den Zeiger auf diese Variabel ¨bergeben "string ciphertext".
Jetzt möchte ich per append Zeichen ans ende Hinzufügen. Aber es kommt immer folgende Meldung:
Fehler 1 error C2228: Links von ".append" muss sich eine Klasse/Struktur/Union befinden.*ciphertext.append("LOS??");
-
Dafür gibt es doch eine eigene Syntax bei Zeigern:
ciphertext->append("Los??");
(wie (*ciphertext).append("Los??"); )
Hinweis:
Verwende nicht zu oft Zeiger, der sinnvollste Einsatz ist meistens in der Objektorientierung, wenn er nur auf ein anderes Objekt, das nicht als Zeiger deklariert wurde, zeigt. Das vereinfacht viele Angelegenheiten. -
Ich wollte eigentlich den ersten Buchstaben zweier Strings vergleichen. Das hab ich so gemacht:
pclear_text[i] == alphabet[i] (pclear_text wurde per Zeiger an funktion übergeben)Leider kommen die Folgenden Fehler:
CodeFehler 13 error C2784: "bool std::operator ==(const std::reverse_iterator<_RanIt> &,const std::reverse_iterator<_RanIt2> &)": template-Argument für "const std::reverse_iterator<_RanIt> &" konnte nicht von "std::string" hergeleitet werden. Fehler 14 error C2784: "bool std::operator ==(const std::reverse_iterator<_RanIt> &,const std::reverse_iterator<_RanIt2> &)": template-Argument für "const std::reverse_iterator<_RanIt> &" konnte nicht von "std::string" hergeleitet werden. Fehler 15 error C2784: "bool std::operator ==(const std::reverse_iterator<_RanIt> &,const std::reverse_iterator<_RanIt2> &)": template-Argument für "const std::reverse_iterator<_RanIt> &" konnte nicht von "std::string" hergeleitet werden. Fehler 16 error C2784: "bool std::operator ==(const std::reverse_iterator<_RanIt> &,const std::reverse_iterator<_RanIt2> &)": template-Argument für "const std::reverse_iterator<_RanIt> &" konnte nicht von "std::string" hergeleitet werden. Fehler 21 error C2784: "bool std::operator ==(const std::pair<_Ty1,_Ty2> &,const std::pair<_Ty1,_Ty2> &)": template-Argument für "const std::pair<_Ty1,_Ty2> &" konnte nicht von "std::string" hergeleitet werden.
nur ein ausschnitt
-
- lEIDER DOCH NICHT
-
Ein wenig Code wäre hilfreich:
-Stelle des Vergleichs
-Kopf der Funktion
-Aufruf der Funktion -
Hat sich erledigt