为了账号安全,请及时绑定邮箱和手机立即绑定

如何在C / C ++中编写日志库(2)

如何在C / C ++中编写日志库(2)

C++ C
翻过高山走不出你 2019-11-29 14:46:08
有什么办法可以写log(base 2)函数?C语言有2个内置函数->>1. log以e为底。2.以log1010为基数;但是我需要以2为底的对数函数。该如何计算。
查看完整描述

3 回答

?
慕姐4208626

TA贡献1852条经验 获得超7个赞

简单的数学:

    log 2x)= log yx)/ log y(2)

其中y可以是任何值,对于标准日志函数,其值为10或e


查看完整回答
反对 回复 2019-11-29
?
千巷猫影

TA贡献1829条经验 获得超7个赞

#define M_LOG2E 1.44269504088896340736 // log2(e)


inline long double log2(const long double x){

    return log(x) * M_LOG2E;

}

(乘法可能快于除法)


查看完整回答
反对 回复 2019-11-29
  • 3 回答
  • 0 关注
  • 474 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信