fstream nadpis

YO
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1
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

CZ
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 231
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:

Kopiuj
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.

Xupicor
  • Rejestracja: dni
  • Ostatnio: dni
1
Kopiuj
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ę. ;)

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.