log10

计算实数以10为底的对数值。

接口定义

C interface:

float log10f(float x);

double log10(double x);

double log10_18(double x); // 仅在高精度版本提供

Fortran interface:

RES = LOG10F(X);

RES = LOG10(X);

参数

参数名

类型

描述

输入/输出

x

  • 在log10f中,x是单精度浮点类型。
  • 在log10中,x是双精度浮点类型。
  • 在log10_18中,x是双精度浮点类型。

表示输入数据的浮点值。

输入

返回值

依赖

C: "km.h"

Fortran: "km.f03"

示例

C interface:
    double pi = acos(-1); 
    // typical usage 
    double x1 = 10.0, x2 = 2.0, x3 = 125, x4 = 5; 
    // special handing 
    double a = 0.0, b = INFINITY, c = -INFINITY, d = NAN, e = 1.0; 
    // print result 
    printf("base-5 logarithm of 125 = %.15f\n", log10(x3)/log10(x4)); 
    printf("log10(1.0) = %.15f\n", log10(e)); 
    printf("log10(10.0) = %.15f\n", log10(x1)); 
    printf("log10(2.0) = %.15f\n", log10(x2)); 
    printf("log10(0.0) = %.15f\n", log10(a)); 
    printf("log10(INFINITY) = %.15f\n", log10(b)); 
    printf("log10(-INFINITY) = %.15f\n", log10(c)); 
    printf("log10(NAN) = %.15f\n", log10(d)); 
    /* 
     *  base-5 logarithm of 125 = 3.000000000000000 
     *  log10(1.0) = 0.000000000000000 
     *  log10(10.0) = 1.000000000000000 
     *  log10(2.0) = 0.301029995663981 
     *  log10(0.0) = -inf 
     *  log10(INFINITY) = inf 
     *  log10(-INFINITY) = nan 
     *  log10(NAN) = nan 
     * 
     * */

Fortran interface:

    REAL(8) :: X = 2 
    PRINT*,  LOG10(X) 
    ! 
    ! OUTPUT 
    !     0.301029995663981 
    !