View source code
Display the source code in std/math.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.logb
Extracts the exponent of x as a signed integral value.
real logb
(
real x
) 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
assert(logb(1.0) .feqrel(0.0) > 16);
assert(logb(100.0) .feqrel(6.0) > 16);
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-2018 by the D Language Foundation | Page generated by ddox.