我们的教授说你不能计算一个b,如果a <0使用pow()因为pow()使用自然对数来计算它(a b = e b ln a),并且由于它未定义为负数,所以无法计算.我尝试了它,只要b是一个整数就可以工作.
我已经搜索了math.h更多文件,但无法找到函数的定义方式以及它用于计算的内容.我也试过在互联网上搜索,但没有任何成功.Stack Overflow就在这里和这里有类似的问题(对于C#).(最后一个很好,但我找不到源代码.)
那么问题是如何pow()在C中实际计算?当基数是有限的且负数且指数是有限的和非整数时,为什么它会返回域错误?