皮皮网

【大鱼无相小程序源码】【电影投资PHP源码】【溆浦老牌游戏源码】powf源码

2024-12-23 01:40:47 来源:在线电子表格源码

1.powfԴ?源码?
2.c语言里conversion from 'double ' to 'float ', possible loss of data是什么意思?

powf源码

powfԴ??

       源代码如下:

       #include<stdio.h>

       #include<stdlib.h>

       #include<math.h>

       #include <iostream>

       using namespace std;

       float Average(float data[], int n);

       float Bias(float data[], int n);

       int main()

       {    int n;

           float data[] = { 0};

           cout<<"Pls input how many numbers:"<<endl;

           cin>>n;

           cout<<"Pls input all the numbers:"<<endl;

           for (int i = 0; i < n; i++)

           cin>>data[i];

           cout<<"The s is "<< Bias(data, n)<< endl;

           system("pause");

           return 0;

       }

       float Average(float data[], int n)

       {    float sum = 0.0;

           for(int i = 0; i < n; i++)

           {

               sum += data[i];

           }

           return sum / n;

       }

       float Bias(float data[], int n)

       {    float temp = 0.0f;

           float average = Average(data, n);

           for (int i = 0; i < n; i++)

           {

               temp += powf(data[i] - average, 2);

           }

           return sqrtf((1.0 / (n - 1)) * temp);

       } 

c语言里conversion from 'double ' to 'float ', possible loss of data是什么意思?

       conversion from 'double' to 'float', possible loss of data 

       翻译:从double转成float,可能会造成数据丢失。源码

       现在的源码计算机,double类型存储占8字节,源码大鱼无相小程序源码float类型存储占4字节,源码当两个不同类型的源码电影投资PHP源码数据进行赋值时,系统进行隐式类型转换,源码高精度向低精度的源码赋值时,低精度变量无法完整存储高精度数据,源码系统会自动“截断”部分内容,源码完成数据转存,源码这样就有可能会造成数据精度丢失。源码

       在C/C++语言中,源码溆浦老牌游戏源码浮点型常数的源码默认类型是double类型,如0.5 ,源码.等,泰达区块鼠源码若想得到float类型常数,则要在常数后加f 字符,如:0.5f ,灵兽世界源码 .f等

       当把double类型数据赋值给float类型变量时,系统编译时会报以下警告:

       warning C: '=' : conversion from 'double' to 'float', possible loss of data 

       一般这种错误常见于:

       用浮点常数给float类型变量赋值,如:float f=0.1 ;  正确写法为:float f=0.1f ;

       调用返回值类型为double的函数,给float类型变量赋值,如:float f=pow(x,n);  pow返回参数x的n次幂。 正确写法:float f=powf(x,n); //调用正确的函数 

       因此,数据间赋值一定要采用正确的类型,建议在使用浮点数时,只使用double类型。