Udostępnij za pośrednictwem


rint, rintf, rintl

Zaokrągla wartość zmiennoprzecinkowa do najbliższej liczby całkowitej w formacie zmiennoprzecinkowych.

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 ); 

Parametry

  • x
    Wartość zmiennoprzecinkowa do zaokrąglenia.

Wartość zwracana

Funkcje rint zwracają wartość zmiennoprzecinkową, która reprezentuje liczbę całkowitą najbliższą wartości x.Połowie wartości są zaokrąglone zgodnie z bieżącego ustawienia trybu zaokrąglania zmiennoprzecinkowych, taki sam jak nearbyint funkcji.W odróżnieniu od nearbyint funkcji, rint funkcje mogą podwyższyć FE_INEXACT zmiennoprzecinkowych wyjątek, jeśli wynik różni się w wartości z argumentu.Nie będzie zwrotu błędu.

Dane wejściowe

Wyjątek SEH

_matherr Wyjątek

∞; GRANICACH, QNAN, ZNAJDŹ

brak

brak

Denormals

EXCEPTION_FLT_UNDERFLOW

brak

Uwagi

Ponieważ C++ pozwala na przeciążenie, można wywoływać przeciążenia rint przyjmujące i zwracające wartości float i long double.W programie C rint zawsze przyjmuje i zwraca double.

Wymagania

Funkcja

Nagłówek C

Nagłówek języka C++

rint, rintf, rintl

< math.h >

< cmath >

Dodatkowe informacje o zgodności – zobacz: Zgodność.

Przykład

// 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));
}
  

Odpowiednik w programie .NET Framework

System::Math::round

Zobacz też

Informacje

Obsługa liczb zmiennoprzecinkowych

ceil, ceilf, ceill

floor, floorf, floorl

fmod, fmodf

lround, lroundf, lroundl, llround, llroundf, llroundl

rint, rintf, rintl

Inne zasoby

lrint, lrintf, lrintl, llrint, llrintf, llrintl

nearbyint, nearbyintf, nearbyintl