Partager via


rint, rintf, rintl

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

double rint( double x );
float rint( float x );  // C++ only
long double rint( long double x );  // C++ only
float rintf( float x ); 
long double rintl( long double x ); 

Paramètres

  • x
    Valeur à virgule flottante à arrondir.

Valeur de retour

Les fonctions rint retournent une valeur à virgule flottante qui représente l'entier le plus proche de x. Les valeurs médianes sont arrondies en fonction du paramètre actif du mode d'arrondi à virgule flottante, à l'instar des fonctions nearbyint. Contrairement aux fonctions nearbyint, les fonctions rint peuvent lever l'exception de virgule flottante FE_INEXACT si le résultat est différent de la valeur de l'argument. Aucun retour d'erreur.

Entrée

Exception SEH

Exception _matherr

± ∞, QNAN, IND

aucun

aucun

Nombres dénormalisés

EXCEPTION_FLT_UNDERFLOW

aucun

Notes

C++ autorisant la surcharge, vous pouvez appeler des surcharges de rint qui acceptent et retournent des valeurs float et long double. Dans un programme C, rint accepte et retourne toujours un double.

Configuration requise

Fonction

En-tête C

En-tête C++

rint, rintf, rintl

<math.h>

<cmath>

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

Exemple

// crt_rint.c
// Build with: cl /W3 /Tc crt_rint.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("rint(%f) is %.0f\n", x, rint (x));
   printf("rint(%f) is %.0f\n", -x, rint (-x));
   printf("rintf(%f) is %.0f\n", y, rintf(y));
   printf("rintf(%f) is %.0f\n", -y, rintf(-y));
   printf("rintl(%Lf) is %.0Lf\n", z, rintl(z));
   printf("rintl(%Lf) is %.0Lf\n", -z, rintl(-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