diff options
Diffstat (limited to 'man-pages-posix-2003/man3p/logb.3p')
-rw-r--r-- | man-pages-posix-2003/man3p/logb.3p | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/man-pages-posix-2003/man3p/logb.3p b/man-pages-posix-2003/man3p/logb.3p new file mode 100644 index 0000000..c9a2370 --- /dev/null +++ b/man-pages-posix-2003/man3p/logb.3p @@ -0,0 +1,107 @@ +.\" Copyright (c) 2001-2003 The Open Group, All Rights Reserved +.TH "LOGB" 3P 2003 "IEEE/The Open Group" "POSIX Programmer's Manual" +.\" logb +.SH PROLOG +This manual page is part of the POSIX Programmer's Manual. +The Linux implementation of this interface may differ (consult +the corresponding Linux manual page for details of Linux behavior), +or the interface may not be implemented on Linux. +.SH NAME +logb, logbf, logbl \- radix-independent exponent +.SH SYNOPSIS +.LP +\fB#include <math.h> +.br +.sp +double logb(double\fP \fIx\fP\fB); +.br +float logbf(float\fP \fIx\fP\fB); +.br +long double logbl(long double\fP \fIx\fP\fB); +.br +\fP +.SH DESCRIPTION +.LP +These functions shall compute the exponent of \fIx\fP, which is the +integral part of log\fI_r\fP +|\fIx\fP|, as a signed floating-point value, for non-zero \fIx\fP, +where \fIr\fP is the radix of the machine's floating-point +arithmetic, which is the value of FLT_RADIX defined in the \fI<float.h>\fP +header. +.LP +If \fIx\fP is subnormal it is treated as though it were normalized; +thus for finite positive \fIx\fP: +.sp +.RS +.nf + +\fB1 <=\fP \fIx\fP \fB* FLT_RADIX**-logb(x) < FLT_RADIX +\fP +.fi +.RE +.LP +An application wishing to check for error situations should set \fIerrno\fP +to zero and call +\fIfeclearexcept\fP(FE_ALL_EXCEPT) before calling these functions. +On return, if \fIerrno\fP is non-zero or +\fIfetestexcept\fP(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW) +is non-zero, an error has occurred. +.SH RETURN VALUE +.LP +Upon successful completion, these functions shall return the exponent +of \fIx\fP. +.LP +If \fIx\fP is \(+-0, a pole error shall occur and \fIlogb\fP(), \fIlogbf\fP(), +and \fIlogbl\fP() shall return -HUGE_VAL, +-HUGE_VALF, and -HUGE_VALL, respectively. +.LP +If +\fIx\fP is NaN, a NaN shall be returned. +.LP +If \fIx\fP is \(+-Inf, +Inf shall be returned. +.SH ERRORS +.LP +These functions shall fail if: +.TP 7 +Pole\ Error +The value of \fIx\fP is \(+-0. +.LP +If the integer expression (math_errhandling & MATH_ERRNO) is non-zero, +then \fIerrno\fP shall be set to [ERANGE]. If the +integer expression (math_errhandling & MATH_ERREXCEPT) is non-zero, +then the divide-by-zero floating-point exception shall be +raised. +.sp +.LP +\fIThe following sections are informative.\fP +.SH EXAMPLES +.LP +None. +.SH APPLICATION USAGE +.LP +On error, the expressions (math_errhandling & MATH_ERRNO) and (math_errhandling +& MATH_ERREXCEPT) are independent of +each other, but at least one of them must be non-zero. +.SH RATIONALE +.LP +None. +.SH FUTURE DIRECTIONS +.LP +None. +.SH SEE ALSO +.LP +\fIfeclearexcept\fP(), \fIfetestexcept\fP(), \fIilogb\fP(), \fIscalb\fP(), +the Base Definitions volume of +IEEE\ Std\ 1003.1-2001, Section 4.18, Treatment of Error Conditions +for +Mathematical Functions, \fI<float.h>\fP, \fI<math.h>\fP +.SH COPYRIGHT +Portions of this text are reprinted and reproduced in electronic form +from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology +-- Portable Operating System Interface (POSIX), The Open Group Base +Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of +Electrical and Electronics Engineers, Inc and The Open Group. In the +event of any discrepancy between this version and the original IEEE and +The Open Group Standard, the original IEEE and The Open Group Standard +is the referee document. The original Standard can be obtained online at +http://www.opengroup.org/unix/online.html . |