Introducing Radical.sh

Forget Code launches a powerful code generator for building API's

String Stream in C++

#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;
  }
}