nearbyint
, , nearbyintf
nearbyintl
Zaokrągla określoną wartość zmiennoprzecinkową do liczby całkowitej i zwraca wartość w formacie zmiennoprzecinkowym.
Składnia
double nearbyint( double x );
float nearbyintf( float x );
long double nearbyintl( long double x );
#define nearbyint( X ) // Requires C11 or higher
float nearbyint( float x ); //C++ only
long double nearbyint( long double x ); //C++ only
Parametry
x
Wartość do zaokrąglenie.
Wartość zwracana
Jeśli operacja powiedzie się, zwraca wartość x
, zaokrągloną do najbliższej liczby całkowitej przy użyciu bieżącego formatu zaokrąglania zgodnie z raportem .fegetround
W przeciwnym razie funkcja może zwrócić jedną z następujących wartości:
Problem | Powrót |
---|---|
x = ±INFINITY |
±INFINITY, niezmodyfikowane |
x = ±0 |
±0, niezmodyfikowane |
x = NaN |
NaN |
Błędy nie są zgłaszane za pośrednictwem metody _matherr
; w szczególności ta funkcja nie zgłasza żadnych FE_INEXACT
wyjątków.
Uwagi
Podstawowa różnica między tą funkcją i rint
polega na tym, że ta funkcja nie zgłasza wyjątku zmiennoprzecinkowego inexact.
Ponieważ maksymalne wartości zmiennoprzecinkowe są dokładnymi liczbami całkowitymi, ta funkcja nigdy nie przepełni się samodzielnie; zamiast tego dane wyjściowe mogą przepełnić wartość zwracaną, w zależności od używanej wersji funkcji.
Język C++ umożliwia przeciążenie, dzięki czemu można wywoływać przeciążenia tych parametrów nearbyint
, które przyjmują i zwracają float
lub long double
parametry. W programie C, chyba że używasz <makra tgmath.h> do wywołania tej funkcji, nearbyint
zawsze przyjmuje dwie podwójne wartości i zwraca podwójną wartość.
Jeśli używasz makra <tgmath.h>nearbyint()
, typ argumentu określa, która wersja funkcji jest zaznaczona. Aby uzyskać szczegółowe informacje, zobacz Typy ogólne matematyczne .
Domyślnie stan globalny tej funkcji jest zakresem aplikacji. Aby zmienić to zachowanie, zobacz Stan globalny w CRT.
Wymagania
Function | Nagłówek języka C | Nagłówek języka C++ |
---|---|---|
nearbyint , , nearbyintf nearbyintl |
<math.h> | <cmath> lub <math.h> |
nearbyint Makro |
<tgmath.h> |
Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.
Zobacz też
Odwołanie do funkcji alfabetycznej
Obsługa obliczeń matematycznych i zmiennoprzecinkowych