Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?
Hasło nie zostało zweryfikowane
Niniejsze hasło zostało opracowane, jednak nie zostało ono zweryfikowane przez administrację serwisu. Jeżeli znalazłeś błędy merytoryczne w niniejszym dokumencie, prosimy o ich zgłoszenie na forum w dziale Znalezione błędy.
Opracował: jankowalski25
Język C++

basic_istream::get

[metoda] Odczytuje pojedynczy znak lub łańcuch znaków ze strumienia.

Składnia

C/C++
#include <istream>

namespace std
{
    class basic_istream
    {
    public:
        //pojedynczy znak
        int_type get();
        basic_istream & get( char_type & ch );
        //łańcuch znaków w stylu C
        basic_istream & get( char_type * str, std::streamsize count );
        basic_istream & get( char_type * str, std::streamsize count, char_type delim );
        //bufor strumienia
        basic_istream & get( basic_streambuf & strbuf );
        basic_istream & get( basic_streambuf & strbuf, char_type delim );
    };
}

Argumenty

ArgumentOpis
chReferencja do zmiennej, w której zostanie umieszczony odczytany znak.
strWskaźnik do tablicy, w której odczytane dane będą przechowywane w postaci łańcucha znaków w stylu C.
countMaksymalna liczba znaków do odczytania.
delimZnak powodujący natychmiastowe przerwanie wczytywania danych.
strbufBufor strumienia, do którego zostaną wczytane dane.

Zwracana wartość

Funkcja bez argumentów zwraca pojedynczy znak lub znak końca pliku (EOF). Pozostałe funkcje zwracają referencję do strumienia (
* this
).

Przykład

C/C++
#include <iostream>
#include <sstream>

int main()
{
    std::istringstream input( "To jest tekst." );
    //wczytywanie jednego znaku
    //przez odczytanie zwróconej wartości
    char c = input.get();
    std::cout << "Znak: \'" << c << "\'\n"
    << "Odczytanych: " << input.gcount() << '\n';
    //przez podanie go jako argument funkcji
    input.get( c );
    std::cout << "Znak: \'" << c << "\'\n"
    << "Odczytanych: " << input.gcount() << '\n';
    //wczytywanie tablicy znaków
    const size_t MAX_SIZE = 5;
    char text[ MAX_SIZE ];
    input.get( text, MAX_SIZE );
    std::cout << "Tekst: \"" << text << "\"\n"
    << "Odczytanych: " << input.gcount() << '\n';
    //wypisywanie reszty danych
    std::cout << "Reszta danych: \"";
    input.get( * std::cout.rdbuf() );
    std::cout << "\"\n"
    << "Odczytanych: " << input.gcount() << '\n';
    return 0;
}
Standardowe wyjście programu:
Znak: 'T'
Odczytanych: 1
Znak: 'o'
Odczytanych: 1
Tekst: " jes"
Odczytanych: 4
Reszta danych: "t tekst."
Odczytanych: 8

Zagadnienia powiązane

readOdczytuje znaki ze strumienia. (metoda)
operator>>Wczytuje dane ze strumienia wejściowego. (operator - metoda)

Linki zewnętrzne