copysign
From cppreference.com
| Defined in header
<math.h>
|
||
| float copysignf( float x, float y );
|
(since C99) | |
| double copysign( double x, double y );
|
(since C99) | |
| long double copysignl( long double x, long double y );
|
(since C99) | |
Composes a floating point value with the magnitude of x and the sign of y.
Contents |
[edit] Parameters
| x, y | - | floating point values |
[edit] Return value
Floating point value with the magnitude of x and the sign of y
[edit] Example
Run this code
#include <stdio.h> #include <math.h> int main(void) { printf("copysign(1.0,+2.0) = %+.1f\n", copysign(1.0,+2.0)); printf("copysign(1.0,-2.0) = %+.1f\n", copysign(1.0,-2.0)); printf("copysign(INFINITY,-2.0) = %f\n", copysign(INFINITY,-2.0)); printf("copysign(NAN,-2.0) = %f\n", copysign(NAN,-2.0)); return 0; }
Possible output:
copysign(1.0,+2.0) = +1.0 copysign(1.0,-2.0) = -1.0 copysign(INFINITY,-2.0) = -inf copysign(NAN,-2.0) = -nan
[edit] See also
| (C99)(C99)
|
computes absolute value of a floating-point value (|x|) (function) |
| (C99)
|
checks if the given number is negative (function) |
|
C++ documentation for copysign
|
|