NAME

SYNOPSIS

DESCRIPTION

RETURN VALUE

ERRORS

ATTRIBUTES

CONFORMING TO

NOTES

SEE ALSO

COLOPHON

## NAME

## SYNOPSIS

## DESCRIPTION

## RETURN VALUE

## ERRORS

## ATTRIBUTES

## CONFORMING TO

## NOTES

## SEE ALSO

## COLOPHON

SYNOPSIS

DESCRIPTION

RETURN VALUE

ERRORS

ATTRIBUTES

CONFORMING TO

NOTES

SEE ALSO

COLOPHON

copysign, copysignf, copysignl − copy sign of a number

**#include
<math.h>**

**double
copysign(double** *x***, double** *y***);
float copysignf(float**

long double copysignl(long double

Link with
*−lm*.

Feature Test
Macro Requirements for glibc (see
**feature_test_macros**(7)):

**copysign**(),
**copysignf**(), **copysignl**():

_SVID_SOURCE || _BSD_SOURCE ||
_XOPEN_SOURCE >= 600 || _ISOC99_SOURCE ||
_POSIX_C_SOURCE >= 200112L;

or *cc -std=c99*

These functions
return a value whose absolute value matches that of
*x*, but whose sign bit matches that of *y*.

For example,
*copysign(42.0, −1.0)* and
*copysign(−42.0, −1.0)* both return
−42.0.

On success,
these functions return a value whose magnitude is taken from
*x* and whose sign is taken from *y*.

If *x* is
a NaN, a NaN with the sign bit of *y* is returned.

No errors occur.

For an
explanation of the terms used in this section, see
**attributes**(7).

C99, POSIX.1-2001, POSIX.1-2008. This function is defined in IEC 559 (and the appendix with recommended functions in IEEE 754/IEEE 854).

On architectures where the floating-point formats are not IEEE 754 compliant, these functions may treat a negative zero as positive.

**signbit**(3)

This page is
part of release 4.04 of the Linux *man-pages* project.
A description of the project, information about reporting
bugs, and the latest version of this page, can be found at
http://www.kernel.org/doc/man−pages/.

© 2018-2020 SourceBinary.com Inc.