Menu

- Learn
- Documentation
  - Language Reference
  - Library Reference
  - Command-line Reference
  - Feature Overview
  - Articles
- Downloads
- Packages
- Community
  - Blog
  - Orgs using D
  - Twitter
  - Forums
  - IRC
  - Community Discord
  - Wiki
  - GitHub
  - Issues
  - Get involved
  - Contributors
  - Foundation
  - Security Team
  - Donate
  - Sponsors
- Resources
  - Tour
  - Books
  - Tutorials
  - Tools
  - Editors
  - IDEs
  - run.dlang.io
  - Visual D
  - Acknowledgments
  - D Style
  - Glossary
  - Sitemap

Search
Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using a local clone.

# core.stdc.math

D header file for C99.
This module contains bindings to selected types and functions from the standard C header <math.h>. Note that this is not automatically generated, and may omit some types/functions from the original C header.
License:
Distributed under the Boost Software License 1.0. (See accompanying file LICENSE)
Authors:
Sean Kelly

Source core/stdc/math.d

alias `float_t` = float;
alias `double_t` = double;
enum double `HUGE_VAL`;
enum double `HUGE_VALF`;
enum double `HUGE_VALL`;
enum float `INFINITY`;
enum float `NAN`;
enum int `FP_ILOGB0`;
enum int `FP_ILOGBNAN`;
enum int `MATH_ERRNO`;
enum int `MATH_ERREXCEPT`;
enum int `math_errhandling`;
`FP_NAN`
`FP_INFINITE`
`FP_ZERO`
`FP_SUBNORMAL`
`FP_NORMAL`
`FP_FAST_FMA`
`FP_FAST_FMAF`
`FP_FAST_FMAL`
pure nothrow @nogc @trusted int `fpclassify`(float `x`);
pure nothrow @nogc @trusted int `fpclassify`(double `x`);
pure nothrow @nogc @trusted int `fpclassify`(real `x`);
pure nothrow @nogc @trusted int `isfinite`(float `x`);
pure nothrow @nogc @trusted int `isfinite`(double `x`);
pure nothrow @nogc @trusted int `isfinite`(real `x`);
pure nothrow @nogc @trusted int `isinf`(float `x`);
pure nothrow @nogc @trusted int `isinf`(double `x`);
pure nothrow @nogc @trusted int `isinf`(real `x`);
pure nothrow @nogc @trusted int `isnan`(float `x`);
pure nothrow @nogc @trusted int `isnan`(double `x`);
pure nothrow @nogc @trusted int `isnan`(real `x`);
pure nothrow @nogc @trusted int `isnormal`(float `x`);
pure nothrow @nogc @trusted int `isnormal`(double `x`);
pure nothrow @nogc @trusted int `isnormal`(real `x`);
pure nothrow @nogc @trusted int `signbit`(float `x`);
pure nothrow @nogc @trusted int `signbit`(double `x`);
pure nothrow @nogc @trusted int `signbit`(real `x`);
pure nothrow @nogc @trusted int `isgreater`(float `x`, float `y`);
pure nothrow @nogc @trusted int `isgreater`(double `x`, double `y`);
pure nothrow @nogc @trusted int `isgreater`(real `x`, real `y`);
pure nothrow @nogc @trusted int `isgreaterequal`(float `x`, float `y`);
pure nothrow @nogc @trusted int `isgreaterequal`(double `x`, double `y`);
pure nothrow @nogc @trusted int `isgreaterequal`(real `x`, real `y`);
pure nothrow @nogc @trusted int `isless`(float `x`, float `y`);
pure nothrow @nogc @trusted int `isless`(double `x`, double `y`);
pure nothrow @nogc @trusted int `isless`(real `x`, real `y`);
pure nothrow @nogc @trusted int `islessequal`(float `x`, float `y`);
pure nothrow @nogc @trusted int `islessequal`(double `x`, double `y`);
pure nothrow @nogc @trusted int `islessequal`(real `x`, real `y`);
pure nothrow @nogc @trusted int `islessgreater`(float `x`, float `y`);
pure nothrow @nogc @trusted int `islessgreater`(double `x`, double `y`);
pure nothrow @nogc @trusted int `islessgreater`(real `x`, real `y`);
pure nothrow @nogc @trusted int `isunordered`(float `x`, float `y`);
pure nothrow @nogc @trusted int `isunordered`(double `x`, double `y`);
pure nothrow @nogc @trusted int `isunordered`(real `x`, real `y`);
nothrow @nogc @trusted double `acos`(double `x`);
nothrow @nogc @trusted float `acosf`(float `x`);
nothrow @nogc @trusted real `acosl`(real `x`);
nothrow @nogc @trusted double `asin`(double `x`);
nothrow @nogc @trusted float `asinf`(float `x`);
nothrow @nogc @trusted real `asinl`(real `x`);
pure nothrow @nogc @trusted double `atan`(double `x`);
pure nothrow @nogc @trusted float `atanf`(float `x`);
pure nothrow @nogc @trusted real `atanl`(real `x`);
nothrow @nogc @trusted double `atan2`(double `y`, double `x`);
nothrow @nogc @trusted float `atan2f`(float `y`, float `x`);
nothrow @nogc @trusted real `atan2l`(real `y`, real `x`);
pure nothrow @nogc @trusted double `cos`(double `x`);
pure nothrow @nogc @trusted float `cosf`(float `x`);
pure nothrow @nogc @trusted real `cosl`(real `x`);
pure nothrow @nogc @trusted double `sin`(double `x`);
pure nothrow @nogc @trusted float `sinf`(float `x`);
pure nothrow @nogc @trusted real `sinl`(real `x`);
pure nothrow @nogc @trusted double `tan`(double `x`);
pure nothrow @nogc @trusted float `tanf`(float `x`);
pure nothrow @nogc @trusted real `tanl`(real `x`);
nothrow @nogc @trusted double `acosh`(double `x`);
nothrow @nogc @trusted float `acoshf`(float `x`);
nothrow @nogc @trusted real `acoshl`(real `x`);
pure nothrow @nogc @trusted double `asinh`(double `x`);
pure nothrow @nogc @trusted float `asinhf`(float `x`);
pure nothrow @nogc @trusted real `asinhl`(real `x`);
nothrow @nogc @trusted double `atanh`(double `x`);
nothrow @nogc @trusted float `atanhf`(float `x`);
nothrow @nogc @trusted real `atanhl`(real `x`);
nothrow @nogc @trusted double `cosh`(double `x`);
nothrow @nogc @trusted float `coshf`(float `x`);
nothrow @nogc @trusted real `coshl`(real `x`);
nothrow @nogc @trusted double `sinh`(double `x`);
nothrow @nogc @trusted float `sinhf`(float `x`);
nothrow @nogc @trusted real `sinhl`(real `x`);
pure nothrow @nogc @trusted double `tanh`(double `x`);
pure nothrow @nogc @trusted float `tanhf`(float `x`);
pure nothrow @nogc @trusted real `tanhl`(real `x`);
nothrow @nogc @trusted double `exp`(double `x`);
nothrow @nogc @trusted float `expf`(float `x`);
nothrow @nogc @trusted real `expl`(real `x`);
nothrow @nogc @trusted double `exp2`(double `x`);
nothrow @nogc @trusted float `exp2f`(float `x`);
nothrow @nogc @trusted real `exp2l`(real `x`);
nothrow @nogc @trusted double `expm1`(double `x`);
nothrow @nogc @trusted float `expm1f`(float `x`);
nothrow @nogc @trusted real `expm1l`(real `x`);
pure nothrow @nogc @trusted double `frexp`(double `value`, int* `exp`);
pure nothrow @nogc @trusted float `frexpf`(float `value`, int* `exp`);
pure nothrow @nogc @trusted real `frexpl`(real `value`, int* `exp`);
nothrow @nogc @trusted int `ilogb`(double `x`);
nothrow @nogc @trusted int `ilogbf`(float `x`);
nothrow @nogc @trusted int `ilogbl`(real `x`);
nothrow @nogc @trusted double `ldexp`(double `x`, int `exp`);
nothrow @nogc @trusted float `ldexpf`(float `x`, int `exp`);
nothrow @nogc @trusted real `ldexpl`(real `x`, int `exp`);
nothrow @nogc @trusted double `log`(double `x`);
nothrow @nogc @trusted float `logf`(float `x`);
nothrow @nogc @trusted real `logl`(real `x`);
nothrow @nogc @trusted double `log10`(double `x`);
nothrow @nogc @trusted float `log10f`(float `x`);
nothrow @nogc @trusted real `log10l`(real `x`);
nothrow @nogc @trusted double `log1p`(double `x`);
nothrow @nogc @trusted float `log1pf`(float `x`);
nothrow @nogc @trusted real `log1pl`(real `x`);
nothrow @nogc @trusted double `log2`(double `x`);
nothrow @nogc @trusted float `log2f`(float `x`);
nothrow @nogc @trusted real `log2l`(real `x`);
nothrow @nogc @trusted double `logb`(double `x`);
nothrow @nogc @trusted float `logbf`(float `x`);
nothrow @nogc @trusted real `logbl`(real `x`);
pure nothrow @nogc @trusted double `modf`(double `value`, double* `iptr`);
pure nothrow @nogc @trusted float `modff`(float `value`, float* `iptr`);
pure nothrow @nogc @trusted real `modfl`(real `value`, real* `iptr`);
nothrow @nogc @trusted double `scalbn`(double `x`, int `n`);
nothrow @nogc @trusted float `scalbnf`(float `x`, int `n`);
nothrow @nogc @trusted real `scalbnl`(real `x`, int `n`);
nothrow @nogc @trusted double `scalbln`(double `x`, c_long `n`);
nothrow @nogc @trusted float `scalblnf`(float `x`, c_long `n`);
nothrow @nogc @trusted real `scalblnl`(real `x`, c_long `n`);
pure nothrow @nogc @trusted double `cbrt`(double `x`);
pure nothrow @nogc @trusted float `cbrtf`(float `x`);
pure nothrow @nogc @trusted real `cbrtl`(real `x`);
pure nothrow @nogc @trusted double `fabs`(double `x`);
pure nothrow @nogc @trusted float `fabsf`(float `x`);
pure nothrow @nogc @trusted real `fabsl`(real `x`);
nothrow @nogc @trusted double `hypot`(double `x`, double `y`);
nothrow @nogc @trusted float `hypotf`(float `x`, float `y`);
nothrow @nogc @trusted real `hypotl`(real `x`, real `y`);
nothrow @nogc @trusted double `pow`(double `x`, double `y`);
nothrow @nogc @trusted float `powf`(float `x`, float `y`);
nothrow @nogc @trusted real `powl`(real `x`, real `y`);
nothrow @nogc @trusted double `sqrt`(double `x`);
nothrow @nogc @trusted float `sqrtf`(float `x`);
nothrow @nogc @trusted real `sqrtl`(real `x`);
pure nothrow @nogc @trusted double `erf`(double `x`);
pure nothrow @nogc @trusted float `erff`(float `x`);
pure nothrow @nogc @trusted real `erfl`(real `x`);
nothrow @nogc @trusted double `erfc`(double `x`);
nothrow @nogc @trusted float `erfcf`(float `x`);
nothrow @nogc @trusted real `erfcl`(real `x`);
nothrow @nogc @trusted double `lgamma`(double `x`);
nothrow @nogc @trusted float `lgammaf`(float `x`);
nothrow @nogc @trusted real `lgammal`(real `x`);
nothrow @nogc @trusted double `tgamma`(double `x`);
nothrow @nogc @trusted float `tgammaf`(float `x`);
nothrow @nogc @trusted real `tgammal`(real `x`);
pure nothrow @nogc @trusted double `ceil`(double `x`);
pure nothrow @nogc @trusted float `ceilf`(float `x`);
pure nothrow @nogc @trusted real `ceill`(real `x`);
pure nothrow @nogc @trusted double `floor`(double `x`);
pure nothrow @nogc @trusted float `floorf`(float `x`);
pure nothrow @nogc @trusted real `floorl`(real `x`);
pure nothrow @nogc @trusted double `nearbyint`(double `x`);
pure nothrow @nogc @trusted float `nearbyintf`(float `x`);
pure nothrow @nogc @trusted real `nearbyintl`(real `x`);
pure nothrow @nogc @trusted double `rint`(double `x`);
pure nothrow @nogc @trusted float `rintf`(float `x`);
pure nothrow @nogc @trusted real `rintl`(real `x`);
nothrow @nogc @trusted c_long `lrint`(double `x`);
nothrow @nogc @trusted c_long `lrintf`(float `x`);
nothrow @nogc @trusted c_long `lrintl`(real `x`);
nothrow @nogc @trusted long `llrint`(double `x`);
nothrow @nogc @trusted long `llrintf`(float `x`);
nothrow @nogc @trusted long `llrintl`(real `x`);
pure nothrow @nogc @trusted double `round`(double `x`);
pure nothrow @nogc @trusted float `roundf`(float `x`);
pure nothrow @nogc @trusted real `roundl`(real `x`);
nothrow @nogc @trusted c_long `lround`(double `x`);
nothrow @nogc @trusted c_long `lroundf`(float `x`);
nothrow @nogc @trusted c_long `lroundl`(real `x`);
nothrow @nogc @trusted long `llround`(double `x`);
nothrow @nogc @trusted long `llroundf`(float `x`);
nothrow @nogc @trusted long `llroundl`(real `x`);
pure nothrow @nogc @trusted double `trunc`(double `x`);
pure nothrow @nogc @trusted float `truncf`(float `x`);
pure nothrow @nogc @trusted real `truncl`(real `x`);
nothrow @nogc @trusted double `fmod`(double `x`, double `y`);
nothrow @nogc @trusted float `fmodf`(float `x`, float `y`);
nothrow @nogc @trusted real `fmodl`(real `x`, real `y`);
nothrow @nogc @trusted double `remainder`(double `x`, double `y`);
nothrow @nogc @trusted float `remainderf`(float `x`, float `y`);
nothrow @nogc @trusted real `remainderl`(real `x`, real `y`);
nothrow @nogc @trusted double `remquo`(double `x`, double `y`, int* `quo`);
nothrow @nogc @trusted float `remquof`(float `x`, float `y`, int* `quo`);
nothrow @nogc @trusted real `remquol`(real `x`, real `y`, int* `quo`);
pure nothrow @nogc @trusted double `copysign`(double `x`, double `y`);
pure nothrow @nogc @trusted float `copysignf`(float `x`, float `y`);
pure nothrow @nogc @trusted real `copysignl`(real `x`, real `y`);
pure nothrow @nogc @trusted double `nan`(char* `tagp`);
pure nothrow @nogc @trusted float `nanf`(char* `tagp`);
pure nothrow @nogc @trusted real `nanl`(char* `tagp`);
nothrow @nogc @trusted double `nextafter`(double `x`, double `y`);
nothrow @nogc @trusted float `nextafterf`(float `x`, float `y`);
nothrow @nogc @trusted real `nextafterl`(real `x`, real `y`);
nothrow @nogc @trusted double `nexttoward`(double `x`, real `y`);
nothrow @nogc @trusted float `nexttowardf`(float `x`, real `y`);
nothrow @nogc @trusted real `nexttowardl`(real `x`, real `y`);
nothrow @nogc @trusted double `fdim`(double `x`, double `y`);
nothrow @nogc @trusted float `fdimf`(float `x`, float `y`);
nothrow @nogc @trusted real `fdiml`(real `x`, real `y`);
pure nothrow @nogc @trusted double `fmax`(double `x`, double `y`);
pure nothrow @nogc @trusted float `fmaxf`(float `x`, float `y`);
pure nothrow @nogc @trusted real `fmaxl`(real `x`, real `y`);
pure nothrow @nogc @trusted double `fmin`(double `x`, double `y`);
pure nothrow @nogc @trusted float `fminf`(float `x`, float `y`);
pure nothrow @nogc @trusted real `fminl`(real `x`, real `y`);
pure nothrow @nogc @trusted double `fma`(double `x`, double `y`, double `z`);
pure nothrow @nogc @trusted float `fmaf`(float `x`, float `y`, float `z`);
pure nothrow @nogc @trusted real `fmal`(real `x`, real `y`, real `z`);

Copyright © 1999-2023 by the D Language Foundation | Page generated by Ddoc on Sat Jul 15 12:03:19 2023