# scalbnl(3) [netbsd man page]

```SCALBN(3)						   BSD Library Functions Manual 						 SCALBN(3)

NAME
scalbn, scalbnf, scalbnl -- exponent using FLT_RADIX

LIBRARY
Math Library (libm, -lm)

SYNOPSIS
#include <math.h>

double
scalbn(double x, int n);

float
scalbnf(float x, int n);

long double
scalbnl(long double x, int n);

DESCRIPTION
The scalbn(), scalbnf(), and scalbnl() functions compute x * r^n, where r is the radix of the machine's floating point arithmetic, defined by
the FLT_RADIX constant in <float.h>.  The rationale is efficiency; r^n is not computed explicitly.

RETURN VALUES
As described above, upon successful completion, the described functions return the exponent computed using FLT_RADIX.  Otherwise the follow-
ing may occur:

1.	When the result would cause an overflow, a range error occurs and +-HUGE_VAL, +-HUGE_VALF, or +-HUGE_VALL is returned according to
the sign of x and the return type of the corresponding function.

2.	When the correct value would cause an underflow and it is not representable, a range error occurs and either 0.0 or an implementa-
tion-defined value is returned.  When an underflow occurs but the correct value is representable, a range error occurs but the
correct value is returned.

3.	If x is +-0 or +-Inf, x is returned.  Likewise, if n is zero, x is returned.  If x is NaN, NaN is returned.

exp(3), frexp(3), ldexp(3), math(3)

STANDARDS
The described functions conform to ISO/IEC 9899:1999 (``ISO C99'').

BSD								September 18, 2011							       BSD```

## Check Out this Related Man Page

```scalbln(3M)						  Mathematical Library Functions					       scalbln(3M)

NAME
scalbln, scalblnf, scalblnl, scalbn, scalbnf, scalbnl - compute exponent using FLT_RADIX

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

double scalbln(double x, long n);

float scalblnf(float x, long n);

long double scalblnl(long double x, long n);

double scalbn(double x, int n);

float scalbnf(float x, int n);

long double scalbnl(long double x, int n);

DESCRIPTION
These functions compute x * FLT_RADIX**n efficiently, not normally by computing FLT_RADIX**n explicitly.

RETURN VALUES
Upon successful completion, these functions return x * FLT_RADIX**n.

If  the result would cause overflow, a range error occurs and these functions return +-HUGE_VAL, +-HUGE_VALF, and +-HUGE_VALL (according to
the sign of x) as appropriate for the return type of the function.

If x is NaN, a NaN is returned.

If x is +-0 or +-Inf, x is returned.

If x is 0, x is returned.

ERRORS
These functions will fail if:

Range Error     The result overflows.

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

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.

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

+-----------------------------+-----------------------------+
|      ATTRIBUTE TYPE	     |	    ATTRIBUTE VALUE	   |
+-----------------------------+-----------------------------+
|Interface Stability	     |Standard			   |
+-----------------------------+-----------------------------+
|MT-Level		     |MT-Safe			   |
+-----------------------------+-----------------------------+