std::fmax, std::fmaxf, std::fmaxl
De cppreference.com
<tbody>
</tbody>
| Definido en el archivo de encabezado <cmath>
|
||
float fmax ( float x, float y ); |
(1) | (desde C++11) (constexpr since C++23) |
float fmaxf( float x, float y ); |
(2) | (desde C++11) (constexpr since C++23) |
double fmax ( double x, double y ); |
(3) | (desde C++11) (constexpr since C++23) |
long double fmax ( long double x, long double y ); |
(4) | (desde C++11) (constexpr since C++23) |
long double fmaxl( long double x, long double y ); |
(5) | (desde C++11) (constexpr since C++23) |
Promovido fmax ( Aritmético1 x, Aritmético2 y ); |
(6) | (desde C++11) (constexpr since C++23) |
1-5) Devuelve el mayor de dos argumentos de punto flotante, tratando los NaN como datos faltantes (entre un NaN y un valor numérico, se elige el valor numérico).
6) Un conjunto de sobrecargas o una plantilla de función para todas las combinaciones de los argumentos de tipo aritmético no cubiertas por (1-5). Si algún argumento tiene tipo entero, se convierte a
double. Si cualquier otro argumento es long double, entonces el tipo de retorno es long double, de lo contrario es double.Parámetros
| x, y | - | Valores de tipos de punto flotante o tipos enteros. |
Valor de retorno
Si tiene éxito, devuelve el mayor de dos valores de punto flotante. El valor devuelto es exacto y no depende de ningún modo de redondeo.
Manejo de errores
Esta función no está sujeta a ninguna de las condiciones de error especificadas en math_errhandling.
Si la implementación admite la aritmética de punto flotante IEEE (IEC 60559):
- Si uno de los dos argumentos es NaN, se devuelve el valor del otro argumento.
- Solo si ambos argumentos son NaN, se devuelve NaN.
Notas
No se requiere que esta función sea sensible al signo de cero, aunque algunas implementaciones también imponen que si un argumento es +0 y el otro es -0, entonces +0.
Ejemplo
Ejecuta este código
#include <iostream>
#include <cmath>
int main()
{
std::cout << "fmax(2,1) = " << std::fmax(2,1) << '\n'
<< "fmax(-Inf,0) = " << std::fmax(-INFINITY,0) << '\n'
<< "fmax(NaN,-1) = " << std::fmax(NAN,-1) << '\n';
}
Salida:
fmax(2,1) = 2
fmax(-Inf,0) = 0
fmax(NaN,-1) = -1
Véase también
(C++11) |
Comprueba si el primer argumento de punto flotante es mayor que el segundo (función) |
(C++11)(C++11)(C++11) |
El menor de dos valores de punto flotante (función) |
| Devuelve el mayor de dos elementos (plantilla de función) | |
| Devuelve el elemento más grande en un rango. (plantilla de función) | |
(C++11) |
Devuelve el menor y el mayor de dos elementos. (plantilla de función) |
(C++11) |
Devuelve el elemento más pequeño y el más grande de un rango. (plantilla de función) |
Documentación de C para fmax
| |