C++ Math copysign()
 
 
 C++ Math copysign()
 
 该函数返回值为x且值为y的值。 
 
语法
 
 考虑两个数字" x"和" y"。语法为: 
 
 
 
  float copysign(float x, float y);
double copysign(double x, double y);
long double copysign(long double x, long double y);
promoted copysign(type1 x, type2 y);
 
   
  
 
 注意: 如果任何参数为long double类型,则返回类型将提升为long double。如果不是,则将返回类型提升为两倍。 
 
参数
 
  x : 带有幅度的值。
 
  y : 带有符号的值。
 
返回值
 
 它返回带有x大小和y符号的值。
 
示例1 
 
 让我们看一个简单的示例,其中y的值为正。
 
 
 
  #include <iostream>
#include<math.h>
using namespace std;
int main()
{
    double x=15.9;
    double y=9;
    std::cout << "Values of x and y are: " <<x<<", "<<y<< std::endl;
    cout<<"copysign(15.9,9) ="<<copysign(x,y);
    return 0;
} 
   
  
  输出: 
 
 
 
  Values of x and y are: 15.9, 9
copysign(15.9,9) =15.9
 
   
  
 在此示例中,copysign()返回x的大小,即15.9,y的符号为负。
 
示例2 
 
 让我们看看一个简单的示例,其中y的值为负。
 
 
 
  #include <iostream>
#include<math.h>
using namespace std;
int main()
{
    double x=-8.6;
    double y=-3.2;
    std::cout << "Values of x and y are :" <<x<<" ,"<<y<< std::endl;
    cout<<"copysign(-8.6,-3.2) ="<<copysign(x,y);
    return 0;
} 
   
  
  输出: 
 
 
 
  Values of x and y are :-8.6 ,-3.2
copysign(-8.6,-3.2) =-8.6
 
   
  
 在此示例中,copysign()返回x的大小,即8.6,y的符号为负。