floor, floorf, floorl
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Défini dans l'en-tête
<math.h>
|
||
|
float
floorf
(
float
arg
)
;
|
(1) | (depuis C99) |
|
double
floor
(
double
arg
)
;
|
(2) | |
|
long
double
floorl
(
long
double
arg
)
;
|
(3) | (depuis C99) |
|
Défini dans l'en-tête
<tgmath.h>
|
||
|
#define floor( arg )
|
(4) | (depuis C99) |
floorl
est appelé. Sinon, si
arg
a un type entier ou le type
double
,
floor
est appelé. Sinon,
floorf
est appelé.
Table des matières |
Paramètres
| arg | - | valeur à virgule flottante |
Valeur de retour
Si aucune erreur ne se produit, la plus grande valeur entière inférieure ou égale à arg , c'est-à-dire ⌊arg⌋ , est renvoyée.
Gestion des erreurs
Les erreurs sont signalées comme spécifié dans
math_errhandling
.
Si l'implémentation prend en charge l'arithmétique à virgule flottante IEEE (IEC 60559) :
- Le mode d'arrondi actuel n'a aucun effet.
- Si arg est ±∞, il est retourné, non modifié.
- Si arg est ±0, il est retourné, non modifié.
- Si arg est NaN, NaN est retourné.
Notes
FE_INEXACT peut être (mais n'est pas obligatoirement) déclenchée lors de l'arrondi d'une valeur finie non entière.
Les plus grandes valeurs représentables en virgule flottante sont des entiers exacts dans tous les formats standard de virgule flottante, donc cette fonction ne provoque jamais de dépassement de capacité par elle-même ; cependant le résultat peut dépasser la capacité de tout type entier (y compris intmax_t ), lorsqu'il est stocké dans une variable entière.
Exemple
Sortie possible :
floor(+2.7) = +2.0 floor(-2.7) = -3.0 floor(-0.0) = -0.0 floor(-Inf) = -inf
Références
- Norme C23 (ISO/CEI 9899:2024) :
-
- 7.12.9.2 Les fonctions floor (p: TBD)
-
- 7.25 Mathématiques génériques de type <tgmath.h> (p: TBD)
-
- F.10.6.2 Les fonctions floor (p: TBD)
- Norme C17 (ISO/CEI 9899:2018) :
-
- 7.12.9.2 Les fonctions floor (p: TBD)
-
- 7.25 Mathématiques génériques de type <tgmath.h> (p: TBD)
-
- F.10.6.2 Les fonctions floor (p: TBD)
- Norme C11 (ISO/IEC 9899:2011) :
-
- 7.12.9.2 Les fonctions floor (p: 251)
-
- 7.25 Mathématiques génériques de type <tgmath.h> (p: 373-375)
-
- F.10.6.2 Les fonctions floor (p: 526)
- Norme C99 (ISO/CEI 9899:1999) :
-
- 7.12.9.2 Les fonctions floor (p: 232)
-
- 7.22 Mathématiques génériques de type <tgmath.h> (p: 335-337)
-
- F.9.6.2 Les fonctions floor (p: 463)
- Norme C89/C90 (ISO/CEI 9899:1990) :
-
- 4.5.6.3 La fonction floor
Voir aussi
|
(C99)
(C99)
|
calcule le plus petit entier non inférieur à la valeur donnée
(fonction) |
|
(C99)
(C99)
(C99)
|
arrondit à l'entier le plus proche dont la magnitude n'est pas supérieure à la valeur donnée
(fonction) |
|
(C99)
(C99)
(C99)
(C99)
(C99)
(C99)
(C99)
(C99)
(C99)
|
arrondit à l'entier le plus proche, en arrondissant à l'opposé de zéro dans les cas médians
(fonction) |
|
Documentation C++
pour
floor
|
|