Using peek() and putback() : cin « Development « C++ Tutorial






#include <iostream>
using namespace std;
int main()
{
   char ch;
   cout << "enter a phrase: ";
   while ( cin.get(ch) )
   {
      if (ch == '!')
         cin.putback('$');
      else
         cout << ch;
      while (cin.peek() == '#')
         cin.ignore(1,'#');
   }
   return 0;
}








5.1.cin
5.1.1.Read int value from keyboard
5.1.2.cin Handles Different Data Types
5.1.3.Use get() to read a string that contains spaces
5.1.4.Use the extraction operator >> with cin.get( ) to process an entire string.
5.1.5.cin with strings (cin.getline)
5.1.6.cin and atoi, atof functions
5.1.7.Using peek() and putback()
5.1.8.Concatenate put()
5.1.9.Testing error states.
5.1.10.Unformatted I/O using cin.read, cin.gcount and cout.write
5.1.11.Contrasting input of a string via cin and cin.get
5.1.12.Demonstrating member function width
5.1.13.Read char array from keyboard, get its length and concatenate two strings
5.1.14.Read a character from keyboard
5.1.15.Copy all standard input to standard output
5.1.16.Manipulator that skips until end-of-line
5.1.17.avoids buffer overflow with cin.width
5.1.18.Extends std::streambuf to create data buffer
5.1.19.Using member functions get, put and eof.
5.1.20.Contrasting input of a string with cin and cin.get.
5.1.21.Unformatted I/O with read, gcount and write.
5.1.22.Character input with member function getline.
5.1.23.Is it a bad input