scalbn(3)

scalbn3

Adjust exponent

Usage

#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);

Library

Math Library (libm, -lm)

Overview

These routines return x∗(2**n) computed by exponent manipulation.

Releases

87 releases since FreeBSD 2.0.5-RELEASE; the text changed 47 times.

  1. 2.0.5
  2. 2.1.5–2.2.8
  3. 2.2.9
  4. 3.0–3.2
  5. 3.3–3.5.1
  6. 4.0–4.2
  7. 4.3
  8. 4.4
  9. 4.5–4.11
  10. 5.0–5.2.1
  11. 5.3
  12. 5.4–5.5
  13. 6.0
  14. 6.1–6.2
  15. 6.3
  16. 6.4
  17. 7.0
  18. 7.1
  19. 7.2
  20. 7.3
  21. 7.4
  22. 8.0
  23. 8.1
  24. 8.2
  25. 8.3
  26. 8.4
  27. 9.0
  28. 9.1
  29. 9.2
  30. 9.3
  31. 10.0
  32. 10.1
  33. 10.2
  34. 10.3
  35. 10.4
  36. 11.0
  37. 11.1
  38. 11.2
  39. 11.3
  40. 11.4
  41. 12.0
  42. 12.1
  43. 12.2
  44. 12.3
  45. 12.4
  46. 13.0–13.2
  47. 13.3–14.5
  48. 15.0–16.0

Standards

These routines conform to ISO/IEC 9899:1999 (“ISO C99”), and they implement the Scalb function recommended by IEEE Std 754-1985.

History

The scalbn() and scalbnf() functions appeared in 4.3BSD and FreeBSD 2.0, respectively. The scalbln() and scalblnf() functions first appeared in FreeBSD 5.3, and scalblnl() and scalbln() in FreeBSD 6.0.

From base 16.0-CURRENT-20261027-61c70dc16a79 in FreeBSD 16.0-CURRENT (2026-10-27). Parsed by carta from the page's mdoc source.