C99 | double copysign (double x , double y);
float copysignf (float x , float y); long double copysignl (long double x, long double y); |
C++11 | double copysign (double x , double y);
float copysign (float x , float y); long double copysign (long double x, long double y); double copysign (Type1 x , Type2 y); // additional overloads |
C99 | 头文件<tgmath.h> 提供了该函数的类型泛型宏版本。 |
C++11 | 这个头文件(<cmath>) 为其他算术类型组合(Type1和Type2)提供了额外的重载:
这些重载在计算前将其实参转换为double,除非至少有一个实参是
long double类型(在这种情况下,两个实参都被转换为long double类型)。
|
/* copysign example */ #include <stdio.h> /* printf */ #include <math.h> /* copysign */ int main () { printf ("copysign ( 10.0,-1.0) = %f\n", copysign( 10.0,-1.0)); printf ("copysign (-10.0,-1.0) = %f\n", copysign(-10.0,-1.0)); printf ("copysign (-10.0, 1.0) = %f\n", copysign(-10.0, 1.0)); return 0; } |
fabs | 计算绝对值(function ) |