Nie umiem czytać :p

0

Każda kolejna liczba w pliku wypisana jest w nowym wierszu. Nie wiem z ilu znaków skladać się będą liczby. Liczba w pierwszym wierszu jest równa ilości wszystkich pozostałych liczb ( na tej podstawie będę wiedział jak wielką zbudować tablicę ). Wszystkie następne liczby chcę wczytać do tablicy i póxniej wykonywać na nich jakieś operacje. Ale qrcze, jak to wszystko zrobić? Próbowale to zrobić tak:
void porzadkuj(char* nazwa)
{
fstream plik ;
plik.open(nazwa, ios::in | ios::out) ;

int ilosc_liczb ;
plik.getline((char*)ilosc_liczb, sizeof(int)) ; // !
int tablica[ilosc_liczb] ;

for(int i = 0 ; i < rozmiar ; i++)
{
    plik.read((char*)tablica[i], sizeof(int)) ;
}

}
Ale mimo, że kod zostaje skompilowany, to już w czasie pracy programu następuje błąd. Ustaliłem,że chodzi o linijkę z wykrzyknikiem w komentarzu. Zwyczajnie nie wiem jak sobie z tym poradzić...

0

Zmienna ilosc_liczb zadeklaruj jako np. char[10], i dopiero po pobraniu jej z pliku przekonwertuj na int.

0

Dzięki
A swoją drogą wpadłem na jeszcze inny pomysł, aż mnie podziw dla autorów C++ bierze i wstyd na mnie samoego. Zwyczajnie zamiast funkcji read() itd piszę:
plik >> tablica[i]
:D Teraz się mecze z wypisaniem tego do pliku, bo coś mi dziwnie przestawia :p

1 użytkowników online, w tym zalogowanych: 0, gości: 1