Partager via


round, roundf, roundl

Arrondit une valeur à virgule flottante à l'entier le plus proche.

double round( 
   double x 
);
float round(
   float x
);  // C++ only
long double round(
   long double x
);  // C++ only
float roundf(
   float x
);
long double roundl(
   long double x
);

Paramètres

  • x
    Valeur à virgule flottante à arrondir.

Valeur de retour

Les fonctions round retournent une valeur à virgule flottante qui représente l'entier le plus proche de x. Les valeurs à moitié sont arrondies en s'éloignant de zéro, indépendamment du paramètre du mode d'arrondi à virgule flottante. Aucun retour d'erreur.

Entrée

Exception SEH

Exception Matherr

± QNAN,IND

aucun

_DOMAIN

Notes

Comme C++ permet la surcharge, vous pouvez appeler les surcharges de round qui acceptent et retournent les valeurs float et long double. Dans un programme C, round prend et retourne toujours double.

Configuration requise

Routine

En-tête requis

round, roundf, roundl

<math.h>

Pour plus d'informations sur la compatibilité, consultez Compatibilité.

Exemple

// crt_round.c
// Build with: cl /W3 /Tc crt_round.c
// This example displays the rounded results of
// the floating-point values 2.499999, -2.499999, 
// 2.8, -2.8, 2.5 and -2.5.

#include <math.h>
#include <stdio.h>

int main( void )
{
   double x = 2.499999;
   float y = 2.8f;
   long double z = 2.5;

   printf("round(%f) is %.0f\n", x, round(x));
   printf("round(%f) is %.0f\n", -x, round(-x));
   printf("roundf(%f) is %.0f\n", y, roundf(y));
   printf("roundf(%f) is %.0f\n", -y, roundf(-y));
   printf("roundl(%Lf) is %.0Lf\n", z, roundl(z));
   printf("roundl(%Lf) is %.0Lf\n", -z, roundl(-z));
}
  

Équivalent .NET Framework

System::Math::Round

Voir aussi

Référence

Prise en charge de la virgule flottante

ceil, ceilf, ceill

floor, floorf, floorl

fmod, fmodf

lround, lroundf, lroundl, llround, llroundf, llroundl

rint, rintf, rintl

Autres ressources

lrint, lrintf, lrintl, llrint, llrintf, llrintl

nearbyint, nearbyintf, nearbyintl