#include <iostream>
#include <sstream>
#include <string>
using namespace std;
double parse(const string& str) {
stringstream ss(str);
double d = 0;
ss >> d;
if (ss.fail( )) {
throw (str +" is not a number");
}
return (d);
}
int main( ) {
try {
cout << parse("1.234e5") << endl;
cout << parse("6.02e-2") << endl;
cout << parse("asdf") << endl;
}
catch (string& e) {
cerr << e << endl;
}
}
|