#include <fstream>
#include <cctype>
// not for use with values which are not digits.
int to_int(char c)
{
switch(c)
{ // makes no assumptions about character order
case'0': return 0 ;
case'1': return 1 ;
case'2': return 2 ;
case'3': return 3 ;
case'4': return 4 ;
case'5': return 5 ;
case'6': return 6 ;
case'7': return 7 ;
case'8': return 8 ;
case'9': return 9 ;
default: return -1 ;
}
}
int main()
{
fstream fin("data.txt") ;
char next ;
while (fin.get(next) )
{
if ( std::isdigit(next) )
{
int value = to_int(next) ;
// do stuff with value.
}
else
{
std::cerr << "Non-digit found in input '" << next << "'\n" ;
// handle error.
}
}
}