Google
Web www.fiveanddime.net

LOGB

Section: Linux Programmer's Manual (3)
Updated: 2004-10-31
Index Return to Main Contents
 

NAME

logb, logbf, logbl - get exponent of a floating point value  

SYNOPSIS

#include <math.h>

double logb(double x);
float logbf(float x);
long double logbl(long double x);

Link with -lm.  

DESCRIPTION

These functions extract the exponent of x and return it as a floating-point value. If FLT_RADIX is two, logb(x) is equal to floor(log2(x)), except it's probably faster.

If x is de-normalized, logb() returns the exponent x would have if it were normalized.

If x is zero, -HUGE_VAL (resp. -HUGE_VALF, -HUGE_VALL) is returned, and a pole error occurs. If x is infinite, plus infinity is returned. If x is NaN, NaN is returned.  

ERRORS

In order to check for errors, set errno to zero and call feclearexcept(FE_ALL_EXCEPT) before calling these functions. On return, if errno is non-zero or fetestexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW) is non-zero, an error has occurred.

If an error occurs and (math_errhandling & MATH_ERRNO) is non-zero, then errno is set to ERANGE. If an error occurs and (math_errhandling & MATH_ERREXCEPT) is non-zero, then the divide-by-zero floating-point exception is raised.

A pole error occurs when x is zero.  

HISTORY

The logb function occurs in BSD 4.3.  

CONFORMING TO

ISO C99  

SEE ALSO

log(3), ilogb(3)


 

Index

NAME
SYNOPSIS
DESCRIPTION
ERRORS
HISTORY
CONFORMING TO
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 00:12:38 GMT, May 13, 2005





www.fiveanddime.net








Google
Web www.fiveanddime.net