Scroll to navigation

ROUND(3) Podręcznik programisty Linuksa ROUND(3)

NAZWA

round, roundf, roundl - zaokrąglenie do najbliższej liczby całkowitej z omijaniem zera

SKŁADNIA

#include <math.h>
double round(double x);
float roundf(float x);
long double roundl(long double x);

Proszę linkować z -lm.

Wymagane ustawienia makr biblioteki glibc (patrz feature_test_macros(7)):

round(), roundf(), roundl():

_ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L

OPIS

Funkcje te zaokrąglają x do najbliższej liczby całkowitej, ale w okolicy zera omijają zero (niezależnie od bieżącego kierunku zaokrąglania, patrz fenv(3)) zaokrąglając, tak jak rint(3), do najbliższej liczby parzystej

Na przykład round(0.5) zwraca 1.0, a round(-0.5) zwraca -1.0.

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.

WERSJE

Funkcje te pojawiły się po raz pierwszy w wersji 2.1 biblioteki glibc.

ATRYBUTY

Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).

Interfejs Atrybut Wartość
round(), roundf(), roundl() Bezpieczeństwo wątkowe MT-Safe

ZGODNE Z

C99, POSIX.1-2001, POSIX.1-2008.

UWAGI

POSIX.1-2001 zawiera tekst dotyczący przepełnienia (które może spowodować ustawienie errno na ERANGE lub spowodować wyjątek FE_OVERFLOW). W praktyce wynik nie może spowodować przepełnienia na żadnej współczesnej maszynie, więc obsługa tego błędu jest po prostu bezsensowna. (Dokładniej, przepełnienie może wystąpić, tylko gdy wartość maksymalna wykładnika jest mniejsza niż liczba bitów mantysy. Według standardu IEEE-754 dla 32 i 64-bitowych liczb zmiennoprzecinkowych wartość maksymalna wykładnika wynosi 128 (odpowiednio 1024), a liczba bitów mantysy wynosi 24 (odpowiednio 53)).

Aby przechowywać zaokrągloną wartość w typie całkowitym, należy użyć jednej z funkcji opisanych w podręczniku lround(3).

ZOBACZ TAKŻE

ceil(3), floor(3), lround(3), nearbyint(3), rint(3), trunc(3)

O STRONIE

Angielska wersja tej strony pochodzi z wydania 5.10 projektu Linux man-pages. Opis projektu, informacje dotyczące zgłaszania błędów oraz najnowszą wersję oryginału można znaleźć pod adresem https://www.kernel.org/doc/man-pages/.

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 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.

15 września 2017 r.