What will be the output of the following C++ code?
#include <iostream>
#include <ios>
#include <istream>
#include <limits>
using namespace std;
template <typename CharT>
void ignore_line ( basic_istream<CharT>& in )
{
in.ignore ( numeric_limits<streamsize> :: max(), in.widen ( '\n' ) );
}
int main()
{
cout << "First input: ";
cin.get();
cout << "Clearing cin.\n";
cin.clear();
ignore_line ( cin );
cout << "All done.\n";
}
#include <iostream>
#include <ios>
#include <istream>
#include <limits>
using namespace std;
template <typename CharT>
void ignore_line ( basic_istream<CharT>& in )
{
in.ignore ( numeric_limits<streamsize> :: max(), in.widen ( '\n' ) );
}
int main()
{
cout << "First input: ";
cin.get();
cout << "Clearing cin.\n";
cin.clear();
ignore_line ( cin );
cout << "All done.\n";
}A. First input
B. Clearing cin
C. Error
D. Second input
Answer: Option D

Join The Discussion