2009-09-27 15 views

Respuesta

-1
#include <float.h> 

a continuación, utilizar FLT_MAX

+0

cabeceras de biblioteca estándar se importan mejor sin la extensión . Consulte esta pregunta sobre SO http://stackoverflow.com/questions/441568/when-can-you-omit-the-file-extension-in-an-include-directive para obtener una descripción general. – Francesco

20
std::numeric_limits<float>::max() 
9

std::numeric_limits

// numeric_limits example 
#include <iostream> 
#include <limits> 
using namespace std; 

int main() { 

    cout << "Minimum value for float: " << numeric_limits<float>::min() << endl; 
    cout << "Maximum value for float: " << numeric_limits<float>::max() << endl; 
    cout << "Minimum value for double: " << numeric_limits<double>::min() << endl; 
    cout << "Maximum value for double: " << numeric_limits<double>::max() << endl; 
    return 0; 
} 
+1

Se debe tener en cuenta que las llamadas a min() para tipos de coma flotante devuelven el valor positivo mínimo, no el valor mínimo. Hay una gran diferencia. –

1

En C++ se puede utilizar la clase std::numeric_limits para obtener este tipo de información rmación.

Si es has_infinitytrue (que será básicamente cierto para todas las plataformas de hoy en día), entonces usted puede utilizar infinitity para obtener el valor que es mayor que o igual a todos los demás valores (excepto NaNs). De forma similar, su negación dará un infinito negativo, y será menor o igual que todos los demás valores (excepto los NaN de nuevo).

Si desea valores finitos, puede usar min/max (que será menor o igual que/mayor o igual que todos los demás valores finitos).

Cuestiones relacionadas