fstream nadpis

0

Witam!,

mam problem ponieważ w moim programie używam odczytywania i zapisywania danych do zewnętrznego pliku tekstowego i odczyt działa w podanym gotowym pliku ale po pierwszym wpisaniu danych do notatnika przez program nie odczytuje on danych.

fragment odczytujący : http://pastebin.com/JPmY85rt

fragment zapisujący: http://pastebin.com/tvy4pZqv

z góry dzięki za pomoc :)

pozdrawiam,

yogi

0

Widać że chyba piszesz jakąś grę z wynikami. Trochę ciężko się połapać w kodzie, ale rozumiem że chcesz zapisać nazwę i wynik do pliku, a potem odczytać pierwsze 10 najlepszych wyników i je wyświetlić. Najlepiej jakbyś stworzył jakąś strukturę np:

struct gracz
{
     int wynik;
     string nazwa;
}

To pozwoli ci łatwiej powiązać ze sobą nazwę gracza czy kogokolwiek z jego wynikiem punktowym.
Widzę że próbujesz 9 razy przelecieć cały plik i wybrać najlepszy wynik i związaną z nim nazwę gracza, tylko coś nie wychodzi. Najlepiej chyba wczytać wszystkie wyniki z pliku do jakiejś tablicy a potem ją posortować według wyników i wypisać pierwsze 10 najlepszych.
No i jeszcze jedna sprawa, argumenty funkcji mają takie same nazwy jak zmienne lokalne w tej funkcji co może doprowadzić do konfliktu.

1
void rekordsort(int *x,string *najlepsi)
//...
        int a=1,maks=0,c,b,i=0,y[10],x[10],e,d=0;

Czemu się tak katujesz? Jak tu się człowiek ma połapać niby co do czego, z takimi nazwami zmiennych? I po co wszystkie zadeklarowane na początku funkcji? Takie nawyki rodem z K&R C wypadałoby porzucić w C++.

Czaffik ma też rację - int x[10] powyżej przykrywa Ci parametr o tej samej nazwie. Poza tę linijkę nawet nie patrzyłem. Te nazwy to jest już wystarczająco duży problem by przestać się martwić o resztę. ;)

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