首页 > 编程笔记

C语言log10():返回x的自然对数(以10为底的对数)

log10() 是 C语言的一个标准库函数,定义在<math.h>头文件中。

log10() 函数用于计算给定数字的以 10 为底的对数。该函数的原型如下:
double log10(double x);

参数

x:想要计算其以 10 为底的对数的值。它必须是正数,否则函数的行为是未定义的。

返回值

返回 x 的以 10 为底的对数。

如果传递给 log10() 的参数小于或等于零,该函数将返回一个特定实现的域错误,并设置全局变量 errno 来表示错误。

【实例】以下的 C语言代码计算了不同数字的以 10 为底的对数,并将结果打印出来。
#include <stdio.h>
#include <math.h>
#include <errno.h>

int main() {
  double numbers[] = {1.0, 10.0, 100.0, -4.0, 0};
  double result;

  for(int i = 0; i < 5; i++) {
    errno = 0; // 清除先前的错误
    result = log10(numbers[i]);

    if(errno == 0) {
      printf("log10(%.2f) = %.2f\n", numbers[i], result);
    } else {
      printf("Error in calculating log10(%.2f)\n", numbers[i]);
    }
  }

  return 0;
}
输出结果为:

log10(1.00) = 0.00
log10(10.00) = 1.00
log10(100.00) = 2.00
Error in calculating log10(-4.00)
Error in calculating log10(0.00)

这个例子展示了 log10() 如何处理正数和产生错误的情况。如果传递了一个非正数,会得到一个错误,你可以通过检查 errno 变量来识别它。

推荐阅读