Originally Posted by
Daved
tried using your function below..
Code:
template<typename charT, typename traits, typename T>
inline bool basic_input(std::basic_istream<charT,traits>& is, T& x, charT delim)
{
std::ios::fmtflags old_flags = is.flags();
if ((is >> std::noskipws >> x) && (is.eof() || is.get() == delim))
{
is.flags(old_flags);
return true;
}
is.flags(old_flags);
x = T();
is.clear();
ignore_line(is, delim);
return false;
}
[EDIT] ..... SORRY provided a wrong one, here's a correct one
template<typename charT, typename traits, typename T>
inline bool basic_input(std::basic_istream<charT,traits>& is, T& x)
{
return basic_input(is, x, is.widen('\n'));
}
[/EDIT]
If i enter a character value, it returns true shouldn't it be accepting for integers only?