Manpage of SCALB

SCALB

Section: Linux Programmer's Manual (3)
Updated: 2016-03-15
Index
 

NAME

scalb, scalbf, scalbl - multiply floating-point number by integral power of radix (OBSOLETE)  

SYNOPSIS

#include <math.h>

double scalb(double x, double exp);
float scalbf(float x, float exp);
long double scalbl(long double x, long double exp);

Link with -lm.

Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

scalb():

_XOPEN_SOURCE >= 500
    || /* Since glibc 2.19: */ _DEFAULT_SOURCE
    || /* Glibc versions <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

scalbf(), scalbl():
_XOPEN_SOURCE >= 600
    || /* Since glibc 2.19: */ _DEFAULT_SOURCE
    || /* Glibc versions <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
 

DESCRIPTION

These functions multiply their first argument xby FLT_RADIX(probably 2) to the power of exp, that is:
    x * FLT_RADIX ** exp

The definition of FLT_RADIXcan be obtained by including <float.h>.  

RETURN VALUE

On success, these functions return x* FLT_RADIX** exp.

If xor expis a NaN, a NaN is returned.

If xis positive infinity (negative infinity), and expis not negative infinity, positive infinity (negative infinity) is returned.

If xis +0 (-0), and expis not positive infinity, +0 (-0) is returned.

If xis zero, and expis positive infinity, a domain error occurs, and a NaN is returned.

If xis an infinity, and expis negative infinity, a domain error occurs, and a NaN is returned.

If the result overflows, a range error occurs, and the functions return HUGE_VAL, HUGE_VALF, or HUGE_VALL, respectively, with a sign the same as x.

If the result underflows, a range error occurs, and the functions return zero, with a sign the same as x.  

ERRORS

See math_error(7) for information on how to determine whether an error has occurred when calling these functions.

The following errors can occur:

Domain error: x is 0, and exp is positive infinity, or x is positive infinity and exp is negative infinity and the other argument is not a NaN
An invalid floating-point exception (FE_INVALID) is raised.
Range error, overflow
An overflow floating-point exception (FE_OVERFLOW) is raised.
Range error, underflow
An underflow floating-point exception (FE_UNDERFLOW) is raised.

These functions do not set errno.  

ATTRIBUTES

For an explanation of the terms used in this section, see attributes(7).
InterfaceAttributeValue
scalb(), scalbf(), scalbl() Thread safetyMT-Safe
 

CONFORMING TO

scalb() is specified in POSIX.1-2001, but marked obsolescent. POSIX.1-2008 removes the specification of scalb(), recommending the use of scalbln(3), scalblnf(3), or scalblnl(3) instead. The scalb() function is from 4.3BSD.

scalbf() and scalbl() are unstandardized; scalbf() is nevertheless present on several other systems  

SEE ALSO

ldexp(3), scalbln(3)


 

Index

NAME
SYNOPSIS
DESCRIPTION
RETURN VALUE
ERRORS
ATTRIBUTES
CONFORMING TO
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 22:27:50 GMT, June 20, 2016