untitled.cpp
static bool parseDouble(const char*& p, double& x)
{
    std::stringstream reader(p);
    std::streambuf* pbuf = reader.rdbuf();
    
    // Keep position before parsing
    std::streamsize size1 = pbuf->in_avail();
    
    // Parse the number
    reader >> x;
    
    // Keep position after parsing
    std::streamsize size2 = pbuf->in_avail();
    
    // Move from the actual size
    p += (size1 - size2);
    
    // True if the number contains at least one digit
    return (size1 > size2);
}
/**
 * @brief parseDouble : parse number [s]dddd[.dddd] and store the result in x
 * @param p the string to parse, then the remaining string
 * @param x the float number found if any
 * @return true if a float number was found at the begin of p
 */
@brief parseDouble : parse number [s]dddd[.dddd] and store the result in x
@param p the string to parse, then the remaining string
@param x the float number found if any
@return true if a float number was found at the begin of p
@brief parseDouble : parse number [ s ] dddd [ . dddd ] and store the result in x @param p the string to parse then the remaining string @param x the float number found if any @return true if a float number was found at the begin of p
static bool parseDouble(const char*& p, double& x)
{
    std::stringstream reader(p);
    std::streambuf* pbuf = reader.rdbuf();
    std::streamsize size1 = pbuf->in_avail();
    reader >> x;
    std::streamsize size2 = pbuf->in_avail();
    p += (size1 - size2);
    return (size1 > size2);
}
static bool parseDouble ( const char * & p , double & x ) { std :: stringstream reader ( p ) ; std :: streambuf * pbuf = reader . rdbuf ( ) ; std :: streamsize size1 = pbuf -> in_avail ( ) ; reader >> x ; std :: streamsize size2 = pbuf -> in_avail ( ) ; p += ( size1 - size2 ) ; return ( size1 > size2 ) ; }
@brief parseDouble : parse number [s]dddd[.dddd] and store the result in x
 @param p the string to parse, then the remaining string
 @param x the float number found if any
 @return true if a float number was found at the begin of p
@brief parseDouble : parse number [ s ] dddd [ . dddd ] and store the result in x @param p the string to parse then the remaining string @param x the float number found if any @return true if a float number was found at the begin of p
// Keep position before parsing // Parse the number // Keep position after parsing // Move from the actual size // True if the number contains at least one digit