Codestd::string s("12.3");std::istringstream iss (s); int val; try { if(!(iss >> val)) throw bad_from_string(s); } catch (bad_from_string & s) { std::cout << s.msg << " "; }