Programowanie obiektowe
Nieformatowane operacje wejścia
Choć zdarza się to rzadziej, czasem chcemy wiedzieć dokładnie co płynie strumieniem
i formatowanie przestaje być udogodnieniem, a zaczyna być utrudnieniem. Wtedy można
posłużyć się funkcjami realizującymi nieformatowane operacje wejścia-wyjścia.
istream& get(char& z);
Wyjmuje ze strumienia jeden bajt
i umieszcza go w podanej zmiennej z. Jako rezultat
zwraca referencję do strumienia
(chyba, że napotka znak końca pliku EOF,
wtedy zwraca NULL). Umożliwia to wołanie kaskadowe
cin.get(a).get(b).get(c);
int get(void);
Wczytany znak jest zwracany przez funkcję.
istream& get(char* gdzie, int ile, char ogran='\n');
Pozwala na wczytanie maksymalnie ile bajtów do tablicy
o adresie gdzie.
Znak ogran to znak, po którego napotkaniu wczytywanie jest przerywane.
istream& getline(char* gdzie, int ile, char ogran='\n');
Działa jak poprzednia funkcja, ale dodatkowo wyjmuje też sam ogranicznik ze strumienia.
istream& read(char* gdzie, int dlugosc);
Poprzednie funkcje, choć w strumieniu bajtów nie widzą liczb, które trzeba formatować, traktują
ten strumień jako ciąg znaków. W szczególności zwracają uwagę na nowe linie i koniec pliku,
a łańcuch utworzony w tablicy gdzie zamykają znakiem NULL. Ta funkcja nawet o tym zapomina.
By sensownie korzystać z takiej funkcji trzeba mieć pewność, że w pliku jest tyle znaków ile
chcemy przeczytać.
(10) (c) Marian Mrozek, Kraków - Nowy Sącz, 1997-2001
Wyszukiwarka
Podobne podstrony:
operacje wejscia wyjscia 13operacje wejscia wyjscia 807 Strumienie, operacje wejścia wyjścia04 operacje wejscia wyjsciaoperacje wejscia wyjscia 10operacje wejscia wyjscia 3operacje wejscia wyjscia 6operacje wejscia wyjscia 1operacje wejscia wyjscia 9operacje wejscia wyjscia 0operacje wejscia wyjscia 5operacje wejscia wyjscia 2operacje wejscia wyjscia 12operacje wejscia wyjscia 11wejscie wyjsciePorty wejścia wyjściawięcej podobnych podstron