Partager via


floor, floorf, floorl

Calcule le plancher d’une valeur.

Syntaxe

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

Paramètres

x
Valeur à virgule flottante.

Valeur retournée

Les fonctions floor retournent une valeur à virgule flottante qui représente le plus grand entier inférieur ou égal à x. Il n’y a pas de retour d’erreur.

Entrée Exception SEH Exception _matherr
± QNaN, IND aucune _DOMAIN

floor présente une implémentation qui utilise SSE2 (Streaming SIMD Extensions 2). Pour plus d’informations et de restrictions sur l’utilisation de l’implémentation SSE2, consultez _set_SSE2_enable.

Notes

C++ autorisant la surcharge, vous pouvez appeler des surcharges de floor qui acceptent et retournent des valeurs float et long double. Dans un programme C, sauf si vous utilisez la <macro tgmath.h> pour appeler cette fonction, floor prend toujours et retourne un double.

Si vous utilisez la <macro tgmath.h>floor() , le type de l’argument détermine la version de la fonction sélectionnée. Pour plus d’informations, consultez les mathématiques génériques de type.

Par défaut, l’état global de cette fonction est limité à l’application. Pour modifier ce comportement, consultez État global dans le CRT.

Spécifications

Fonction En-tête requis
floor, floorf, floorl <math.h>
Macro floor <tgmath.h>

Pour plus d’informations sur la compatibilité, consultez Compatibility.

Exemple

// 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

Voir aussi

Prise en charge mathématique et à virgule flottante
ceil, ceilf, ceill
round, roundf, roundl
fmod, fmodf