Odczytywanie danych z pliku.
Ostatnio zmodyfikowano 2014-05-03 16:46
Kudłaty Temat założony przez niniejszego użytkownika |
» 2014-05-03 16:15:21 Teraz jest pełen kod: #include <iostream> #include <fstream>
int main() { int liczby[ 10 ]; char a; int i = 0; std::fstream dane; dane.open( "dane.txt", std::ios::in | std::ios::out ); while( i < 10 ) { a = dane.get(); if( dane.good() ) { liczby[ i ] = static_cast < int >( a ); std::cout << a << std::endl; std::cout << liczby[ i ] << std::endl; } i++; } dane.close(); }
Przez przypadek dałem nie pełny, bo mam trochę 'zbędnych' rzeczy więc, żeby nie zaśmiecać. Po zmianie na int zamiast pierwszej liczby 2 pokazuje 50. Więc to jest to samo co pokazuje zmienna liczby po przypisaniu do niej wartości z chara. |
|
Raptiler |
» 2014-05-03 16:39:06 Przy rzutowaniu z char na int Twoj program generuje Ci kod znaku ASCII możesz temu zapobiec na kilka sposobów, albo funkcja atoi(), ale wtedy rzutowanie static_cast wogole nie jest potrzebne, albo prościej bo w twoim konkretnym przypadku potrzebne Ci jest tylko odczytanie liczb od 0 do 9, kody tych znaków w ASCII są zawsze o 48 większe niż liczby, więc poprostu odejmij od wyniku 48 :)
Tu masz ASCII jbc. http://pl.wikipedia.org/wiki/ASCII |
|
Kudłaty Temat założony przez niniejszego użytkownika |
» 2014-05-03 16:46:43 Nie pomyślałem o tym chociaż wiem, że to ASCII i wcześniej robiłem tym samym sposobem z odejmowaniem, ale w innym przypadku. Dzięki za pomoc. |
|
1 « 2 » |