La funzione copysign () in C ++ accetta due argomenti e restituisce un valore con la grandezza del primo argomento e il segno del secondo argomento.
La funzione è definita nel file di intestazione.
prototipo copysign () (come dallo standard C ++ 11)
doppia copia (doppia x, doppia y); float copysign (float x, float y); lunga doppia copia (lunga doppia x, lunga doppia y); Copysign promosso (Type1 x, Type2 y); // Overload aggiuntivi per i tipi aritmetici
Poiché C ++ 11, se un argomento passato a copysign () è long double
, il tipo restituito Promoted
è long double
. In caso contrario, il tipo restituito Promoted
è double
.
Parametri copysign ()
-
x : valore con l'ampiezza del valore risultante.
-
y : valore con il segno del valore risultante.
copysign () Restituisce il valore
La funzione copysign () restituisce un valore con la grandezza di x e il segno di y.
Esempio 1: funzione copysign () per argomenti dello stesso tipo
#include #include using namespace std; int main() ( double x = 34.15, y = -13.0, result; result = copysign(x, y); cout << "copysign(" << x << "," << y << ") = " << result << endl; return 0; )
Quando esegui il programma, l'output sarà:
copysign (34.15, -13) = -34.15
Esempio 2: funzione copysign () per argomenti di diversi tipi
#include #include using namespace std; int main() ( double x = 34.15, result; int y = -54; result = copysign(x, y); cout << "copysign(" << x << "," << y << ") = " << result << endl; return 0; )
Quando esegui il programma, l'output sarà:
copysign (34.15, -54) = -34.15