Ich versuche, eine Übung aus einem Lehrbuch zu replizieren, jedoch liest die Datei nie und so wird die if-Anweisung ausgelöst, mir zu sagen, dass ich die Datei nicht gelesen habe. Ich habe keine Fehlermeldung oder Warnungen. Ich bin sicher, dass ich etwas Grundlegendes vermisse, aber ich weiß einfach nicht, was es sein könnte .... Ich benutze OSX, Clang7.0, benutze Qt (aber ich habe es auch in erhabenen Text versucht und es scheitert auch dort hier C++ Basis-Datei-E/A, Fehler beim Lesen
) ist der Code:#include <fstream>
#include <iostream>
using namespace std;
int main()
{
ifstream file_reader ("myfile.txt");
if (!file_reader.is_open())
{
cout<<"Could not open file!"<<'\n';
}
int number;
file_reader >> number;
cout<<number;
}
die Datei wird im selben Verzeichnis wie die Programmdateien ist. Es ist eine TXT-Datei einfach enthalten:
12 a b c
habe ich versucht, den vollständigen Pfad setzen und einen Blick auf einige ähnliche Themen hatte aber es scheint nicht das gleiche Problem wie this
Dank zu sein für jede Hilfe im Voraus
funktioniert gut mit GCC-Version 4.6.4 auf Ubuntu 12.04, ist die TXT-Datei im selben Verzeichnis wie die ausführbare Datei? – Jonas
Es funktioniert für mich unter Linux. Bitte fügen Sie '<< std :: endl 'zu Ihrer Ausgabeanweisung hinzu und sehen Sie, was passiert – GMichael
Bitte geben Sie weitere Informationen an. Was ist die Ausgabe? Hast du das Debuggen probiert? Der Code sieht gut aus, abgesehen von der fehlenden Rückgabe in if body und am Ende der Hauptfunktion. – stryku