fork download
  1. #include <iostream>
  2.  
  3. #include <sstream>
  4.  
  5. #include <string>
  6.  
  7.  
  8.  
  9. void validate(std::string const& a_str)
  10.  
  11. {
  12.  
  13. std::cout << a_str << " is ";
  14.  
  15. std::istringstream in(a_str);
  16.  
  17. double val;
  18.  
  19. if (in >> val && EOF == in.get()) std::cout << "valid\n";
  20.  
  21. else std::cout << "invalid\n";
  22.  
  23. }
  24.  
  25.  
  26.  
  27. int main()
  28.  
  29. {
  30.  
  31. validate("123.34ab");
  32.  
  33. validate("123.34");
  34.  
  35. return 0;
  36.  
  37. }
  38.  
  39.  
Success #stdin #stdout 0.02s 2860KB
stdin
Standard input is empty
stdout
123.34ab is invalid
123.34 is valid