... // ciało funkcji
int func(int licznik){
fstream IStream("plik.txt",ios::in);
while(licznik>0){
char wyrzuc_linie[40];
IStream.getline(wyrzuc_linie,40);
--licznik;}
if( IStream.is_open()){
cout << "Uzyskano dostep do pliku!" << std::endl;
IStream >> Liczba;
...//
IStream >> Liczba, to odpowienie przeciążenie, które wczytuje mi wyrażenie zapisane w linii ( każde jest w osobnej linii tekstu). Problem polega na tym że jest to funkcja która będzie wywoływana kilka razy, czyli po prostu co jakiś czas chcę brać z pliku kolejną linię , wymyśliłem sobie, że jej parametrem będzie zmienna licznik, która określa który to raz wywołuję funkcje , a zarazem którą linię tekstu chcę wczytać. Zrobiłem więc tablicę znakową i sprytną pętle, która wczyta kilka kolejnych linii do pominięcia i przy wywołaniu przeciążenia >> wczyta mi kolejną, nową. Niestety tak nie jest następuje zrzut pamięci.
Jak to jest, za każdym wywołaniem funkcji ten plik będzie otwierany na nowo ?
Nie wiem na jakiej zasadzie to działa.