S
Senator
Mitglied
Hi,
ich lerne gerade C++ und bin mitlerweile beim Filehandling angelangt:
Frei nach dem Buch "Practical C++" will ich bescheidene 10 Zahlen aus einer Datei in einen int Array einlesen.
Ich hab die schwierige Zeile mit einem Teufel markiert. Denn genau da scheint nichts zu passieren. Kein einziger Array Wert wird initialisiert. Alles andere funktioniert.
Warum funktioniert das nicht? Ich möchte keinen alternativen Code haben, sondern wissen, warum das nicht geht und wo der Fehler liegt.
#include <iostream>
#include <fstream>
int main(){
const int SIZE = 10;
int array[SIZE];
int counter;
std::ifstream datei("versuch.dat");
if(datei == 0){
std::cerr << "Datei konnte nicht geöffnet werden.";
exit(8 );
}
for(counter = 0; counter < SIZE; ++counter){
datei >> array[counter];
std::cout << counter << ". " << array[counter] << "\n";
}
return(0);
}
PS.: Mit std::ofstream hab ich übrigens keine Probleme.
ich lerne gerade C++ und bin mitlerweile beim Filehandling angelangt:
Frei nach dem Buch "Practical C++" will ich bescheidene 10 Zahlen aus einer Datei in einen int Array einlesen.
Ich hab die schwierige Zeile mit einem Teufel markiert. Denn genau da scheint nichts zu passieren. Kein einziger Array Wert wird initialisiert. Alles andere funktioniert.
Warum funktioniert das nicht? Ich möchte keinen alternativen Code haben, sondern wissen, warum das nicht geht und wo der Fehler liegt.
#include <iostream>
#include <fstream>
int main(){
const int SIZE = 10;
int array[SIZE];
int counter;
std::ifstream datei("versuch.dat");
if(datei == 0){
std::cerr << "Datei konnte nicht geöffnet werden.";
exit(8 );
}
for(counter = 0; counter < SIZE; ++counter){
datei >> array[counter];
std::cout << counter << ". " << array[counter] << "\n";
}
return(0);
}
PS.: Mit std::ofstream hab ich übrigens keine Probleme.