math.h
是C標準函数庫中的头文件。提供用于常用高级数学运算的运算函数。
包含的函数原型
三角函数类
- double sin (double);正弦
- double cos (double);余弦
- double tan (double);正切
- double asin (double); 结果介于[-PI/2, PI/2]
- double acos (double); 结果介于[0, PI]
- double atan (double); 反正切(主值), 结果介于[-PI/2, PI/2]
- double atan2 (double, double); 反正切(整圆值), 结果介于[-PI, PI]
- double sinh (double);双曲线正弦
- double cosh (double);双曲线余弦
- double tanh (double);双曲线正切
指数对数类
- double exp (double);求取自然数e的幂
- double sqrt (double);开平方
- double log (double); 以e为底的对数
- double log10 (double);以10为底的对数
- double pow(double x, double y);计算以x为底数的y次幂
- float powf(float x, float y); 功能等同于pow,只是输入参数与输出参数皆为单浮点数
取整
- double ceil (double); 取上整
- double floor (double); 取下整
绝对值
- double fabs (double);求绝对值
- double cabs(struct complex znum) ;求复数的绝对值
标准化浮点数
- double frexp (double f, int *p); 标准化浮点数, f = x * 2^p, 已知f求x, p ( x介于[0.5, 1] )
- double ldexp (double x, int p); 与frexp相反, 已知x, p求f
取整与取余
- double modf (double, double*); 将参数的整数部分通过指针回传, 返回小数部分
- double fmod (double, double); 返回两参数相除的余数
其他
- double hypot(double x, double y);已知直角三角形两个直角边长度,求斜边长度
- double ldexp(double x, int exponent);计算x*(2的exponent次幂)
- double poly(double x, int degree, double coeffs [] );计算多项式
- nt matherr(struct exception *e);数学错误计算处理程序
参考
- 《C & C++ Code Capsules》