# scalbn(3) [opendarwin man page]

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

NAME
scalbn, scalbln

SYNOPSIS
#include <math.h>

double
scalbn(double x, int n);

float
scalbnf(float x, int n);

double
scalbln(double x, long int n);

float
scalblnf(float x, long int n);

DESCRIPTION
The scalbn() , scalbnf() , scalbln() , and scalblnf() functions return x*(2**n) computed by exponent manipulation.

SPECIAL VALUES
scalbn(+-0, n) returns +-0.

scalbn(x, 0) returns x.

scalbn(+-infinity, n) returns +-infinity.

scalbln() has the same special values.

math(3), ldexp(3)

STANDARDS
The scalbn() , scalbnf() , scalbln() , and scalblnf() functions conform to ISO/IEC 9899:1999(E).

BSD								   July 23, 2003							       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			   |
+-----------------------------+-----------------------------+