basic_istream::putback() in C++ with Examples (original) (raw)
Last Updated : 15 Jul, 2025
The basic_istream::putback() used to put the character back in the input string. This function is present in the iostream header file. Below is the syntax for the same:Header File:
#include**<iostream**>
Syntax:
basic_istream& putback (char_type ch);
Parameter:
- ch: It represents the character to be put into the input string back.
Return Value: The iostream::basic_istream::putback() return the basic_istream object. Below are the programs to understand the implementation of std::basic_istream::putback() in a better way:Program 1:
CPP14 `
// C++ code for basic_istream::putback() #include <bits/stdc++.h>
using namespace std;
int main() { stringstream gfg1("GeeksforGeeks"); gfg1.get();
// putback A into the input string
if (gfg1.putback('A'))
cout << gfg1.rdbuf() << endl;
istringstream gfg2("GeeksforGeeks");
gfg2.get();
if (gfg2.putback('A'))
cout << gfg2.rdbuf() << endl;
else
cout << "putback is failed here\n";
gfg2.clear();
// Again putback G in the string
if (gfg2.putback('G'))
cout << gfg2.rdbuf() << endl;}
`
Output:
AeeksforGeeks putback is failed here GeeksforGeeks
Program 2:
CPP14 `
// C++ code for basic_istream::putback() #include <bits/stdc++.h>
using namespace std;
int main() { stringstream gfg1("GOOD"); gfg1.get();
// putback B into the input string
if (gfg1.putback('B'))
cout << gfg1.rdbuf() << endl;
istringstream gfg2("GOOD");
gfg2.get();
if (gfg2.putback('B'))
cout << gfg2.rdbuf() << endl;
else
cout << "putback is failed here\n";
gfg2.clear();
// Again putback G in the string
if (gfg2.putback('G'))
cout << gfg2.rdbuf() << endl;}
`