logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

fdim, fdimf, fdiml - positive difference

Attributes

       For an explanation of the terms used in this section, see attributes(7).
       ┌─────────────────────────────────────────────────────────────────────────────┬───────────────┬─────────┐
       │ InterfaceAttributeValue   │
       ├─────────────────────────────────────────────────────────────────────────────┼───────────────┼─────────┤
       │ fdim(), fdimf(), fdiml()                                                    │ Thread safety │ MT-Safe │
       └─────────────────────────────────────────────────────────────────────────────┴───────────────┴─────────┘

Bugs

       Before glibc 2.24 on certain architectures (e.g., x86, but not x86_64) these functions did not set errno.

Description

       These functions return the positive difference, max(x-y,0), between their arguments.

Errors

       See math_error(7) for information on how to determine whether an error has occurred  when  calling  these
       functions.

       The following errors can occur:

       Range error: result overflow
              errno is set to ERANGE.  An overflow floating-point exception (FE_OVERFLOW) is raised.

History

       glibc 2.1.  C99, POSIX.1-2001.

Library

       Math library (libm, -lm)

Name

       fdim, fdimf, fdiml - positive difference

Return Value

       On success, these functions return the positive difference.

       If x or y is a NaN, a NaN is returned.

       If  the  result  overflows,  a  range  error  occurs,  and  the  functions return HUGE_VAL, HUGE_VALF, or
       HUGE_VALL, respectively.

See Also

fmax(3)

Linux man-pages 6.9.1                              2024-05-02                                            fdim(3)

Standards

       C11, POSIX.1-2008.

Synopsis

#include<math.h>doublefdim(doublex,doubley);floatfdimf(floatx,floaty);longdoublefdiml(longdoublex,longdoubley);

   Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

       fdimf(), fdiml():
           _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L

See Also