View source code
Display the source code in std/math/exponential.d from which this
page was generated on github.
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
local clone.
Function std.math.exponential.logb
Extracts the exponent of x as a signed integral value.
real logb
(
real x
) pure nothrow @nogc @trusted;
double logb
(
double x
) pure nothrow @nogc @trusted;
float logb
(
float x
) pure nothrow @nogc @trusted;
If x is subnormal, it is treated as if it were normalized. For a positive, finite x:
1 <= x * FLT_RADIX-logb(x) < FLT_RADIX
x | logb(x) | divide by 0? |
---|---|---|
±∞ | +∞ | no |
±0.0 | -∞ | yes |
Example
writeln(logb(1.0)); // 0
writeln(logb(100.0)); // 6
writeln(logb(0.0)); // -real.infinity
writeln(logb(real .infinity)); // real.infinity
writeln(logb(-real .infinity)); // real.infinity
Authors
Walter Bright, Don Clugston, Conversion of CEPHES math library to D by Iain Buclaw and David Nadlinger
License
Copyright © 1999-2024 by the D Language Foundation | Page generated by ddox.