Provided by: manpages-ru-dev_4.18.1-1_all bug

ИМЯ

       round, roundf, roundl - округление до ближайшего целого в направлении от нуля

LIBRARY

       Math library (libm, -lm)

СИНТАКСИС

       #include <math.h>

       double round(double x);
       float roundf(float x);
       long double roundl(long double x);

   Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

       round(), roundf(), roundl():
           _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L

ОПИСАНИЕ

       Эти  функции  округляют  аргумент  x  до  ближайшего  целого значения, но при округлении в
       половине случаев  используют  направление  округления  от  нуля  (независимо  от  текущего
       направления округления, смотрите fenv(3)), вместо округления до ближайшего чётного целого,
       как это делает функция rint(3).

       Например, результат round(0.5) будет равен 1.0, а round(-0.5) будет равен -1.0.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

       Данные функции возвращают округлённое целое число.

       Если x целое, +0, -0, NaN или стремится к бесконечности, то будет возвращено значение x.

ОШИБКИ

       Ошибки  не  возникают.  В  документах  POSIX.1-2001  описывается  ошибка   диапазона   при
       переполнениях, однако смотрите ЗАМЕЧАНИЯ.

ВЕРСИИ

       These functions were added in glibc 2.1.

АТРИБУТЫ

       Описание терминов данного раздела смотрите в attributes(7).

       ┌───────────────────────────────────────────────────────┬──────────────────────┬──────────┐
       │ИнтерфейсАтрибутЗначение │
       ├───────────────────────────────────────────────────────┼──────────────────────┼──────────┤
       │round(), roundf(), roundl()                            │ Безвредность в нитях │ 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).)

       Если  вы хотите сохранить округлённое значение в целочисленном типе, то лучше использовать
       одну из функций, описанных в lround(3).

СМ. ТАКЖЕ

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

ПЕРЕВОД

       Русский перевод этой страницы руководства был сделан aereiae  <aereiae@gmail.com>,  Azamat
       Hackimov <azamat.hackimov@gmail.com>, Dmitriy S. Seregin <dseregin@59.ru>, Katrin Kutepova
       <blackkatelv@gmail.com>, Lockal <lockalsash@gmail.com>, Yuri Kozlov  <yuray@komyakino.ru>,
       Баринов Владимир и Иван Павлов <pavia00@gmail.com>

       Этот  перевод  является  бесплатной  документацией;  прочитайте  Стандартную  общественную
       лицензию GNU версии 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ или более позднюю, чтобы
       узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

       Если  вы  обнаружите  ошибки  в  переводе этой страницы руководства, пожалуйста, отправьте
       электронное письмо на ⟨man-pages-ru-talks@lists.sourceforge.net⟩.