Search code examples
c++stringdouble

Determining if a string is a double


I would like to see if a string contains a double as its sole contents. In other words, if it could possibly be the output of the following function:

string doubleToString(double num)
{
    stringstream s;
    s << num;
    return s.str();
}

Solution

  • You want the strtod function.

    bool isOnlyDouble(const char* str)
    {
        char* endptr = 0;
        strtod(str, &endptr);
    
        if(*endptr != '\0' || endptr == str)
            return false;
        return true;
    }