lrint
, , lrintf
llrint
lrintl
llrintf
,llrintl
Округляет указанное значение с плавающей запятой до ближайшего целого значения, используя текущие режим и направление округления.
Синтаксис
long int lrint(
double x
);
long int lrint(
float x
); //C++ only
long int lrint(
long double x
); //C++ only
long int lrintf(
float x
);
long int lrintl(
long double x
);
long long int llrint(
double x
);
long long int llrint(
float x
); //C++ only
long long int llrint(
long double x
); //C++ only
long long int llrintf(
float x
);
long long int llrintl(
long double x
);
#define lrint(X) // Requires C11 or higher
Параметры
x
Значение для округления.
Возвращаемое значение
В случае успешного выполнения возвращает округленное целочисленное значение x
.
Проблема | Возврат |
---|---|
x находится за пределами диапазона типа возвращаемого значенияx = ±INFx = не число |
FE_INVALID Вызывает и возвращает ноль (0). |
Замечания
Так как C++ позволяет перегружать, можно вызывать перегрузкиlrint
, которые принимают float
и llrint
long double
типы. В программе C, если вы не используете <макрос tgmath.h> для вызова этой функции и lrint
llrint
всегда принимаете .double
Если вы используете <макрос tgmath.h>llrint()
, тип аргумента определяет, какая версия функции выбрана. Дополнительные сведения см . в разделе "Математика с универсальным типом".
Если x
значение целочисленного значения не представляет эквивалент с плавающей запятой, эти функции вызываются FE_INEXACT
.
Корпорация Майкрософт: если результат выходит за пределы диапазона возвращаемого типа или когда параметр является naN или бесконечностью, то возвращается значение, определенное. Компилятор Майкрософт возвращает нулевое значение (0).
По умолчанию глобальное состояние этой функции ограничивается приложением. Чтобы изменить это поведение, см . статью "Глобальное состояние" в CRT.
Требования
Function | Заголовок C | Заголовок C++ |
---|---|---|
lrint , , lrintf llrint lrintl llrintf ,llrintl |
<math.h> | <cmath> |
lrint Макрос |
<tgmath.h> |
Дополнительные сведения о совместимости см. в разделе Совместимость.