#include <iostream>
int main()
{
char c ;
std::cin >> c ; // gets the next non-whitespace char (discards leading whitespaces)
std::cin.get(c) ; // gets the next char (which may be a white space)
std::cin >> std::noskipws ;
std::cin >> c ; // gets the next char (which may be a white space)
}
That's pretty self explanatory, don't you think? Puts a character back to the istream so you can read it again (you might want to read it into another data type).