2019/1/3

220 阅读1分钟

1.

编程时应注意数学运算的结果,与平时计算不同,如

c = (5 /9)* (f - 32) ;

编译从左到右,5/9已经为0;无法得出结果,应改为

c = 5 * (f - 32) / 9;

2.

头文件:#include <math.h>

pow() 函数用来求 x 的 y 次幂(次方),其原型为:

double pow(double x, double y);

pow()用来计算以x 为底的 y 次方值,然后将结果返回。

可能导致错误的情况: 如果底数 x 为负数并且指数 y 不是整数,将会导致 domain error 错误。 如果底数 x 和指数 y 都是 0,可能会导致 domain error 错误,也可能没有;这跟库的实现有关。 如果底数 x 是 0,指数 y 是负数,可能会导致 domain error 或 pole error 错误,也可能没有;这跟库的实现有关。 如果返回值 ret 太大或者太小,将会导致 range error 错误。

错误代码: 如果发生 domain error 错误,那么全局变量 errno 将被设置为 EDOM; 如果发生 pole error 或 range error 错误,那么全局变量 errno 将被设置为 ERANGE。

注意,使用 GCC 编译时请加入-lm。