floor
, , floorf
, floorl
Calcula el límite inferior de un valor.
Sintaxis
double floor(
double x
);
float floor(
float x
); // C++ only
long double floor(
long double x
); // C++ only
float floorf(
float x
);
long double floorl(
long double x
);
#define floor(X) // Requires C11 or higher
Parámetros
x
Valor de punto flotante.
Valor devuelto
Las funciones floor
devuelven un valor de punto flotante que representa el entero más grande que sea menor o igual que x
. No se devuelve ningún error.
Entrada | Excepción SEH | Excepción de _matherr |
---|---|---|
± QNaN, IND | None | _DOMAIN |
floor
tiene una implementación que usa las Extensiones SIMD de transmisión por secuencias 2 (SSE2). Para obtener información y las restricciones sobre el uso de la implementación de SSE2, vea _set_SSE2_enable
.
Comentarios
Puesto que C++ permite las sobrecargas, es posible llamar a las sobrecargas de floor
que toman y devuelven los valores float
y long double
. En un programa de C, a menos que use la macro de <tgmath.h> para llamar a esta función, floor
siempre toma y devuelve un double
.
Si usa la macro <tgmath.h>floor()
, el tipo del argumento determina qué versión de la función se selecciona. Consulte Matemáticas de tipo genérico para obtener más información.
De manera predeterminada, el estado global de esta función está limitado a la aplicación. Para cambiar este comportamiento, consulte Estado global en CRT.
Requisitos
Función | Encabezado necesario |
---|---|
floor , , floorf , floorl |
<math.h> |
floor Macro |
<tgmath.h> |
Para obtener más información sobre compatibilidad, consulte Compatibilidad.
Ejemplo
// crt_floor.c
// This example displays the largest integers
// less than or equal to the floating-point values 2.8
// and -2.8. It then shows the smallest integers greater
// than or equal to 2.8 and -2.8.
#include <math.h>
#include <stdio.h>
int main( void )
{
double y;
y = floor( 2.8 );
printf( "The floor of 2.8 is %f\n", y );
y = floor( -2.8 );
printf( "The floor of -2.8 is %f\n", y );
y = ceil( 2.8 );
printf( "The ceil of 2.8 is %f\n", y );
y = ceil( -2.8 );
printf( "The ceil of -2.8 is %f\n", y );
}
The floor of 2.8 is 2.000000
The floor of -2.8 is -3.000000
The ceil of 2.8 is 3.000000
The ceil of -2.8 is -2.000000
Vea también
Compatibilidad con cálculos matemáticos y el punto flotante
ceil
, , ceilf
, ceill
round
, , roundf
, roundl
fmod
, fmodf