Provided by: manpages-pl-dev_4.21.0-2_all
NAZWA
nearbyint, nearbyintf, nearbyintl, rint, rintf, rintl - zaokrąglenie do najbliższej liczby całkowitej
BIBLIOTEKA
Biblioteka matematyczna (libm, -lm)
SKŁADNIA
#include <math.h> double nearbyint(double x); float nearbyintf(float x); long double nearbyintl(long double x); double rint(double x); float rintf(float x); long double rintl(long double x); Wymagane ustawienia makr biblioteki glibc (patrz feature_test_macros(7)): nearbyint(), nearbyintf(), nearbyintl(): _POSIX_C_SOURCE >= 200112L || _ISOC99_SOURCE rint(): _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 500 || /* Od glibc 2.19: */ _DEFAULT_SOURCE || /* glibc w wersji <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE rintf(), rintl(): _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L || /* Od glibc 2.19: */ _DEFAULT_SOURCE || /* glibc w wersji <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
OPIS
Funkcje nearbyint(), nearbyintf() oraz nearbyintl() zaokrąglają swoje argumenty do wartości całkowitej w postaci zmiennoprzecinkowej, korzystając z bieżącego kierunku zaokrąglania (patrz fesetround(3)) i nie powodując wystąpienia wyjątku inexact. Gdy bieżących kierunkiem zaokrąglania jest do najbliższej, w przypadkach połówkowych funkcje te zaokrąglają do całkowitej parzystej, zgodnie z IEEE-754. Funkcje rint(), rintf() oraz rintl() robią to samo, ale powodują wystąpienie wyjątku inexact (FE_INEXACT, wystąpienie wyjątku można sprawdzić za pomocą fetestexcept(3)), gdy wynik ma inną wartość niż argument.
WARTOŚĆ ZWRACANA
Funkcje te zwracają zaokrągloną wartość całkowitą. Jeśli x jest całkowite, +0, -0, NaN lub nieskończoność, to zwracane jest x.
BŁĘDY
Nie występują. POSIX.1-2001 dokumentuje błąd zakresu przy przepełnieniu — patrz UWAGI.
ATRYBUTY
Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7). ┌──────────────────────────────────────────────────────┬────────────────────────┬─────────┐ │Interfejs │ Atrybut │ Wartość │ ├──────────────────────────────────────────────────────┼────────────────────────┼─────────┤ │nearbyint(), nearbyintf(), nearbyintl(), rint(), │ Bezpieczeństwo wątkowe │ MT-Safe │ │rintf(), rintl() │ │ │ └──────────────────────────────────────────────────────┴────────────────────────┴─────────┘
STANDARDY
C99, POSIX.1-2001, POSIX.1-2008.
UWAGI
SUSv2 and POSIX.1-2001 contain text about overflow (which might set errno to ERANGE, or raise an FE_OVERFLOW exception). In practice, the result cannot overflow on any current machine, so this error-handling stuff is just nonsense. (More precisely, overflow can happen only when the maximum value of the exponent is smaller than the number of mantissa bits. For the IEEE-754 standard 32-bit and 64-bit floating-point numbers the maximum value of the exponent is 127 (respectively, 1023), and the number of mantissa bits including the implicit bit is 24 (respectively, 53).) Aby przechowywać zaokrągloną wartość w typie całkowitym, należy użyć jednej z funkcji opisanych w podręczniku lrint(3).
ZOBACZ TAKŻE
ceil(3), floor(3), lrint(3), round(3), trunc(3)
TŁUMACZENIE
Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl>, Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com> Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI. Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej ⟨manpages-pl-list@lists.sourceforge.net⟩.