CRE*_*REW 2 c++ math floating-point-precision
我之前从未使用过漂浮物,而我正在进行的当前项目需要它们.我得到了几年前我学到的奇怪问题,但却忘记了为什么会这样.
乘以或添加浮点数后的结果不是它们应该的结果.
这是我的代码:
void main ()
{
//Example 1 - ERROR
float a=16937.6;
float b=112918;
float total=b+a;
cout<<total<<endl; //Outputs 129896 - rounds up and loses decimal (129855.6)
//Example 2 - Error
float c=247.82;
float d=9995.2;
float total2=c+d;
cout<<total2<<endl; //Outputs 10243 - loses all decimals (10243.02)
system ("pause");
}
Run Code Online (Sandbox Code Playgroud)
您的问题不是小数精度 - 它是用于输出值的格式.
尝试:
cout << setiosflags(ios::fixed) << setprecision(2) << x;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3352 次 |
| 最近记录: |