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::putback

[metoda] Wstawia znak na początku strumienia wejściowego.

Składnia

C/C++
#include <istream>

namespace std
{
    template < class CharT, class Traits = std::char_traits < CharT > >
    class basic_istream
        : virtual public std::basic_ios < CharT, Traits >
    {
    public:
        basic_istream & putback( char_type ch );
    };
}

Argumenty

ArgumentOpis
chZnak do wstawienia.

Zwracana wartość

Referencja do strumienia, czyli
* this
.

Przykład

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

int main()
{
    //dane z tego strumienia mogą być odczytywane i zapisywane
    std::stringstream stream( "to jest tekst" );
    stream.get();
    if( stream.putback( 'T' ) ) std::cout << stream.rdbuf();
    else std::cout << "Niepowodzenie!";
   
    std::cout << '\n';
    //w tym przypadku nie można nadpisać danych
    std::istringstream input( "tylko do odczytu" );
    input.get();
    if( input.putback( 'T' ) ) std::cout << input.rdbuf();
    else std::cout << "Niepowodzenie!";
   
    std::cout << '\n';
    input.clear();
    //po wstawieniu tego samego znaku nie występuje błąd
    if( input.putback( 't' ) ) std::cout << input.rdbuf();
    else std::cout << "Niepowodzenie!";
   
    return 0;
}
Standardowe wyjście programu:
To jest tekst
Niepowodzenie!
tylko do odczytu

Linki zewnętrzne