返回一个值,该值具有一个自变量的数值和另一个自变量的符号。

语法

double copysign(
   double x,
   double y
);
float copysign(
   float x,
   float y
); // C++ only
long double copysign(
   long double x,
   long double y
); // C++ only
float copysignf(
   float x,
   float y
); // C++ only
long double copysignl(
   long double x,
   long double y
); // C++ only
double _copysign(
   double x,
   double y
);
long double _copysignl(
   long double x,
   long double y
);
#define copysign(X, Y) // Requires C11 or higher

参数

x
作为结果的数值返回的浮点值。

y
作为结果的符号返回的浮点值。

数学和浮点支持

返回值

copysign 函数返回将 x 的数值与 y 的符号相结合的浮点值。 无错误返回。

备注

由于 C++ 允许重载,因此你可以调用采用并返回 copysignfloat 值的 long double 重载。 在 C 程序中,除非使用 <tgmath.h> 宏调用此函数,否则 copysign 始终采用并返回 double

如果使用 <tgmath.h>copysign() 宏,则参数的类型将决定选择哪个版本的函数。 有关详细信息,请参阅泛型类型数学

要求

例程 必需的标头
_copysign <float.h>
<math.h>
copysign <tgmath.h>

有关兼容性的详细信息,请参阅 兼容性

另请参阅

.- .
.- .