C++ problem z dopisywanie danych do struktury w pliku binarnym
Ostatnio zmodyfikowano 2018-01-25 22:15
lapus Temat założony przez niniejszego użytkownika |
» 2018-01-25 20:30:59 Jeśli wypisuje wartość sumy w funkcji która liczy sumę jest ok, ale jeśli chcę w niej tylko obliczyć i zapisać a wczytać z innej to zawsze jest 0. Czyli nie poprawnie się zapisuję, ale dlaczego? struct oceny { int ile = 0; float suma = 0; float srednia; float ocena[ 10 ]; };
struct dziennik { char imie[ 20 ], nazwisko[ 20 ], pesel[ 20 ], telefon[ 20 ]; oceny angielski; oceny polski; oceny matematyka; }; void suma_ocen() { dziennik uczen; fstream plikOdczyt2( "dzienniklekcyjny.dat", ios::binary | ios::in | ios::out ); for( int j = 1;; j++ ) { plikOdczyt2.read( reinterpret_cast < char *>( & uczen ), sizeof( uczen ) ); if( plikOdczyt2.eof() ) break; for( int i = 0; i < uczen.angielski.ile; i++ ) { uczen.angielski.suma += uczen.angielski.ocena[ i ]; } for( int i = 0; i < uczen.matematyka.ile; i++ ) { uczen.matematyka.suma += uczen.matematyka.ocena[ i ]; } for( int i = 0; i < uczen.polski.ile; i++ ) { uczen.polski.suma += uczen.polski.ocena[ i ]; } cout << "suma angielski " << uczen.angielski.suma; cout << "suma matemtyka " << uczen.matematyka.suma; cout << "suma polski" << uczen.polski.suma; plikOdczyt2.write( reinterpret_cast < char *>( & uczen ), sizeof( uczen ) ); } plikOdczyt2.close(); } |
|
pekfos |
» 2018-01-25 20:49:37 Po co w ogóle trzymasz w pliku sumę i średnią? |
|
lapus Temat założony przez niniejszego użytkownika |
» 2018-01-25 22:15:38 Faktycznie, dzięki. |
|
1 « 2 » |