6.11.114 log10l Function

Calculates the base-10 logarithm of a long double-precision floating-point value.

Include

<math.h>

Prototype

long double log10(long double x);

Argument

x
any long double-precision floating-point positive number

Return Value

Returns the base-10 logarithm of x. If x is 0, infinity is returned. If x is < 0, NaN is returned .

Remarks

If x < 0, a domain error will occur and errno will be set to EDOM.

Example

See the notes at the beginning of this chapter or section for information on using printf() or scanf() (and other functions reading and writing the stdin or stdout streams) in the example code.

#include <math.h>
#include <stdio.h>
#include <errno.h>

int main(void)
{
  long double x, y;

  errno = 0;
  x = 2.0;
  y = log10l(x);
  if (errno)
    perror("Error");
  printf("The base-10 logarithm of %f is %f\n", x, y);

  errno = 0;
  x = 0.0;
  y = log10l(x);
  if (errno)
    perror("Error");
  printf("The base-10 logarithm of %f is %f\n", x, y);

  errno = 0;
  x = -2.0;
  y = log10l(x);
  if (errno)
    perror("Error");
  printf("The base-10 logarithm of %f is %f\n", x, y);
}

Example Output

The base-10 logarithm of 2.000000 is 0.301030
The base-10 logarithm of 0.000000 is -inf
Error: domain error
The base-10 logarithm of -2.000000 is nan