wczytywanie z pliku

0

Petla wykonuje sie o jeden raz za dużo, co z tym mozna zrobić?

	plik.close();

	fstream plik;
	plik.open("plik.txt");
	if(plik.good()){
	
		while(plik.eof()==0){

			plik>>tablica[i];
			
			i++;
		}
	}
	plik.close(); 
0

Na koncu pliku nie masz jakiegos bialego znaku?

2

Ban na google? :)
http://stackoverflow.com/questions/8236006/c-eof-running-one-too-many-times

tak na szybko, prościej chyba by było tak:

{
    ifstream f("plik.txt");
    using T = decltype(tablica[0]);
    copy(istream_iterator<T>(f), istream_iterator<T>(), begin(tablica));
}
1
    ifstream plik("plik.txt");
    for(size_t i=0;(i<tablicaSize)&&(plik>>tablica[i]);++i) {}
    plik.close(); 

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.