llrint - округление до ближайшего
llrint(3)
округление до ближайшего
Other Alias
lrint, lrintf, lrintl, llrintf, llrintl
ОБЗОР
#include <math.h>
long int lrint(double x);
long int lrintf(float x);
long int lrintl(long double x);
long long int llrint(double x);
long long int llrintf(float x);
long long int llrintl(long double x);
Компонуется при указании параметра -lm.
Требования макроса тестирования свойств для glibc
(см. feature_test_macros(7)):
Все функции, показанные выше:
_XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L;
или
cc -std=c99
ОПИСАНИЕ
Данные функции округляют переданный аргумент до ближайшего целого значения в
соответствии с текущим направлением округления (см.
fesetround(3)).
Заметим, что в отличии от семейства функций rint(3), тип возвращаемого
значения этих функций отличается от типа их аргументов.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
Данные функции возвращают округлённое целое число.
Если x является NaN или равно бесконечности, либо округленное значение
слишком велико для типа long (long long в случае функций ll*),
возникает ошибка области, а возвращаемое значение останется неуказанным.
ОШИБКИ
Смотрите
math_error(7), чтобы определить, какие ошибки могут возникать
при вызове этих функций.
Могут возникать следующие ошибки:
Ошибка области:
x является NaN или равно бесконечности, либо округленное значение слишком велико
Возникает исключение неправильной плавающей запятой (
FE_INVALID).
Эти функции не изменяют errno.
ВЕРСИИ
Эти функции впервые появились в glibc 2.1.
АТРИБУТЫ
Описание терминов данного раздела смотрите в
attributes(7).
Интерфейс Атрибут Значение
lrint(),
lrintf(),
lrintl(),
llrint(),
llrintf(),
llrintl()
безвредность в потоках: безвредно (MT-Safe)
СООТВЕТСТВИЕ СТАНДАРТАМ
C99, POSIX.1-2001, POSIX.1-2008.