###### (This is the documentation for SDL3, which is the current stable version. SDL2 was the previous version!)

# SDL_copysign

Copy the sign of one floating-point value to another.

Defined in <SDL3/SDL_stdinc.h>

## Syntax

`double SDL_copysign(double x, double y);`

## Function Parameters

double |
**x** |
floating point value to use as the magnitude. |

double |
**y** |
floating point value to use as the sign. |

## Return Value

(double) Returns the floating point value with the sign of y and the magnitude of x.

The definition of copysign is that `copysign(x, y) = abs(x) * sign(y)`

.

Domain: `-INF <= x <= INF`

, `-INF <= y <= f`

Range: `-INF <= z <= INF`

This function operates on double-precision floating point values, use SDL_copysignf for single-precision floats.

## Thread Safety

It is safe to call this function from any thread.

## Version

This function is available since SDL 3.1.3.

## See Also

CategoryAPI, CategoryAPIFunction, CategoryStdinc