Content-type: text/html Man page of logb

logb

Section: Mathematical Library Functions (3M)
Updated: 12 Jul 2006
Index Return to Main Contents
 

NAME

logb, logbf, logbl - radix-independent exponent  

SYNOPSIS

c99 [ flag... ] file... -lm [ library... ]
#include <math.h>

double logb(double x);

float logbf(float x);

long double logbl(long double x);

cc [ flag... ] file... -lm [ library... ]
#include <math.h>

double logb(double x);

float logbf(float x);

long double logbl(long double x);  

DESCRIPTION

These functions compute the exponent of x, which is the integral part of logr |x|, as a signed floating point value, for non-zero x, where r is the radix of the machine's floating-point arithmetic, which is the value of FLT_RADIX defined in the <float.h> header.  

RETURN VALUES

Upon successful completion, these functions return the exponent of x.

If x is subnormal:

• For SUSv3-conforming applications compiled with the c99 compiler driver (see standards(5)), the exponent of x as if x were normalized is returned.

• Otherwise, if compiled with the cc compiler driver, -1022, -126, and -16382 are returned for logb(), logbf(), and logbl(), respectively.

If x is ±0, a pole error occurs and logb(), logbf(), and logbl() return -HUGE_VAL, -HUGE_VALF, and -HUGE_VALL, respectively.

If x is NaN, a NaN is returned.

If x is ±Inf, +Inf is returned.  

ERRORS

These functions will fail if:

Pole Error The value of x is ±0.

If the integer expression (math_errhandling & MATH_ERREXCEPT) is non-zero, the divide-by-zero floating-point exception is raised.

The logb() function sets errno to EDOM if the value of x is 0.

 

USAGE

An application wanting to check for exceptions should call feclearexcept(FE_ALL_EXCEPT) before calling these functions. On return, if fetestexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW) is non-zero, an exception has been raised. An application should either examine the return value or check the floating point exception flags to detect exceptions.

An application can also set errno to 0 before calling logb(). On return, if errno is non-zero, an error has occurred. The logbf() and logbl() functions do not set errno.  

ATTRIBUTES

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPEATTRIBUTE VALUE
Interface StabilityStandard
MT-LevelMT-Safe

 

SEE ALSO

feclearexcept(3M), fetestexcept(3M), ilogb(3M), math.h(3HEAD), matherr(3M), scalb(3M), attributes(5), standards(5)


 

Index

NAME
SYNOPSIS
DESCRIPTION
RETURN VALUES
ERRORS
USAGE
ATTRIBUTES
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 02:39:32 GMT, October 02, 2010