fmod, fmodf, fmodl - функция
получения
остатка от
деления
числа с
плавающей
запятой
Math library (
libm,
-lm)
#include <math.h>
double fmod(double x, double y);
float fmodf(float x, float y);
long double fmodl(long double x, long double y);
fmodf(),
fmodl():
_ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
|| /* начиная с glibc 2.19: */ _DEFAULT_SOURCE
|| /* Glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
Эти
функции
вычисляют
остаток
деления
числа с
плавающей
запятой
x
на
y.
Возвращаемое
значение:
x -
n *
y, где
n —
частное
x /
y,
округлённое
к нулю до
ближайшего
целого
числа.
При
успешном
выполнении
функции
возвращают
значение
x -
n*
y для
некоторого
целого
n;
при этом
возвращаемое
значение
имеет тот
же знак что
и
x, а
абсолютное
значение
меньше
абсолютного
значения
y.
Если
значение
x
или
y равно
NaN, будет
возвращено
NaN.
Если
x
стремится
к
бесконечности,
то будет
сгенерирована
ошибка
выхода за
пределы
области, а в
качестве
результата
будет
возвращено
NaN.
Если
y
равно 0, то
будет
сгенерирована
ошибка
выхода за
пределы
области, а в
качестве
результата
будет
возвращено
NaN.
Если
x
равно +0 (-0) и
y
не равно, то
возвращается
+0 (-0).
Смотрите
math_error(7), чтобы
определить,
какие
ошибки
могут
возникать
при вызове
этих
функций.
Могут
возникать
следующие
ошибки:
- Ошибка
области: x
стремится
к
бесконечности
- Значение
errno
устанавливается
в EDOM (но см.
ДЕФЕКТЫ).
Возникает
исключение
неправильной
плавающей
запятой (
FE_INVALID).
- Ошибка
области: y
равно 0
-
errno
устанавливается
в EDOM.
Вызывается
исключение
неправильной
плавающей
точки ( FE_INVALID).
Описание
терминов
данного
раздела
смотрите в
attributes(7).
Интерфейс |
Атрибут |
Значение |
fmod(), fmodf(), fmodl() |
Безвредность
в нитях |
MT-Safe |
C99, POSIX.1-2001, POSIX.1-2008.
Вариант,
возвращающий
значение
типа
double,
также
соответствует
SVr4, 4.3BSD.
Before glibc 2.10, the glibc implementation did not set
errno to
EDOM when a domain error occurred for an infinite
x.
remainder(3)
Русский
перевод
этой
страницы
руководства
был сделан
Azamat Hackimov <
[email protected]>, Dmitry Bolkhovskikh
<
[email protected]>, Yuri Kozlov <
[email protected]> и
Иван
Павлов <
[email protected]>
Этот
перевод
является
бесплатной
документацией;
прочитайте
Стандартную
общественную
лицензию GNU
версии 3
или более
позднюю,
чтобы
узнать об
условиях
авторского
права. Мы не
несем
НИКАКОЙ
ОТВЕТСТВЕННОСТИ.
Если вы
обнаружите
ошибки в
переводе
этой
страницы
руководства,
пожалуйста,
отправьте
электронное
письмо на
[email protected]