我想在c语言中使用自然logarit。
我搜索了谷歌并在stackoverflow.com上找到了这个问题
但是当我实现这个时,我得到一个非常神秘的输出
这是代码
double x = log(100 / 150);
printf("d1: %lf", x);
和输出:
d1: -1.#INF00
这是什么?它是某种垃圾吗?有什么问题?
答案 0 :(得分:5)
整数除法使100 / 150
等于0
,因此,log(0)
未定义。
将代码更改为log(100.0 / 150.0)
。
答案 1 :(得分:0)
如果要记录的参数为0,则输出是实现定义的。