Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Определяет положительную разность между первым и вторым значениями.
Синтаксис
double fdim(
double x,
double y
);
float fdim(
float x,
float y
); //C++ only
long double fdim(
long double x,
long double y
); //C++ only
float fdimf(
float x,
float y
);
long double fdiml(
long double x,
long double y
);
#define fdim(X) // Requires C11 or later
Параметры
x
Первое значение в вычитании.
y
Второе значение в вычитании.
Возвращаемое значение
Возвращает положительную разность между x и y:
| Возвращаемое значение | Сценарий |
|---|---|
x-y |
если x>y |
| 0 | if x<= y |
В случае неудачи может возвращать одну из следующих ошибок:
| Проблема | Возврат |
|---|---|
| Ошибка переполнения диапазона | +HUGE_VAL, +HUGE_VALF или +HUGE_VALL |
| Ошибка недостаточного заполнения диапазона | правильное значение (после округления) |
x или y имеет значение NaN |
Не число |
Ошибки сообщаются, как указано в _matherr.
Замечания
Поскольку C++ допускает перегрузки, можно вызывать перегрузки функции fdim, принимающие и возвращающие типы float и long double. В программе C, если вы не используете <макрос tgmath.h> для вызова этой функции, fdim всегда принимает и возвращает значение double.
Если вы используете <макрос tgmath.h>fdim() , тип аргумента определяет, какая версия функции выбрана. Дополнительные сведения см . в разделе "Математика с универсальным типом".
За исключением обработки NaN, эта функция эквивалентна fmax(x - y, 0).
Требования
| Function | Заголовок C | Заголовок C++ |
|---|---|---|
fdim, , fdimffdiml |
<math.h> | <cmath> |
fdimМакрос |
<tgmath.h> |
Дополнительные сведения о совместимости см. в разделе Совместимость.
См. также
Справочник по алфавитной функции
fmax, , fmaxffmaxl
abs, , labsllabs_abs64