fstream readsome a kompilator(?)

Odpowiedz Nowy wątek
2011-08-30 20:19
0

Mam problem z funkcją readsome z biblioteki fstream. Na linuksie działa to bezproblemowo, jednak pod windowsem (MS Visual C++ 2010 i Code::blocks) ta funkcja nie działa. Program normalnie się kompiluje, brak jakiegokolwiek błędu czy innej informacji, ale podczas działania programu po prostu to nie działa. Czy ktoś wie, czym to jest spowodowane?

Pozostało 580 znaków

2011-08-30 20:26
Rev
0

Pewnie jakimś błędem w twoim kodzie.
Na VC++ 2010 takie coś działa normalnie:

std::istringstream strStream("napis");
char* buf = new char[4];
strStream.readsome(buf, 3);
buf[3] = '\0';

Zgaduję, że wywołujesz readsome na std::cin, a jak możemy przeczytać, The function is intended to be used to read binary data from certain types of asynchronic sources that may wait for more characters, since it stops reading when the local buffer exhausts, avoiding potential unexpected delays.


edytowany 1x, ostatnio: Rev, 2011-08-30 20:28

Pozostało 580 znaków

2011-08-30 22:51
0

Dokładnie to chodzi mi o ten kod.

 
std::ifstream odczyt("nazwa.txt", std::ios::binary);
char bufor[5];
odczyt.readsome(bufor, 5);
odczyt.close(); 

Pozostało 580 znaków

2011-08-30 23:03
Rev
0

Dlaczego w ogóle używasz tej metody zamiast read? readsome czyta tylko to, co jest w buforze, jak nie zacząłeś czytać pliku to w buforze strumienia nic nie ma.


Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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