round, roundf, roundl - zaokrąglenie do najbliższej liczby
całkowitej z omijaniem zera
Math library (
libm,
-lm)
#include <math.h>
double round(double x);
float roundf(float x);
long double roundl(long double x);
round(),
roundf(),
roundl():
_ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
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.
Funkcje te zwracają zaokrągloną wartość
całkowitą.
Jeśli
x jest całkowite, +0, -0, NaN lub
nieskończoność, to zwracane jest
x.
Nie występują. POSIX.1-2001 dokumentuje błąd zakresu
przy przepełnieniu — patrz UWAGI.
These functions were added in glibc 2.1.
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 |
C99, POSIX.1-2001, POSIX.1-2008.
POSIX.1-2001 contains 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
lround(3).
ceil(3),
floor(3),
lround(3),
nearbyint(3),
rint(3),
trunc(3)
Autorami polskiego tłumaczenia niniejszej strony podręcznika
są: Andrzej Krzysztofowicz <
[email protected]>, Robert
Luberda <
[email protected]> i Michał Kułach
<
[email protected]>
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
[email protected]