版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/CV2017/article/details/82663867
开发环境及工具:win7 + Visual Studio 2010
C 语言的 float 有效数字位数为 7 位,double 有效数字位数为 ? 位(未能测出)
C++ 的 float 有效数字位数为 6 位,double 有效数字位数为 ? 位(未能测出) C++Primer 里说 double 为 16 位
C语言版本
#include <stdio.h>
int main()
{
float fA = 1.12345;
float fB = 1.123456;
float fC = 1.1234567;
float fD = 1.1;
printf("%f\n",fA);
printf("%f\n",fB);
printf("%f\n",fC);
printf("%f\n",fD);
return 0;
}
C++语言版本
#include <iostream>
using namespace std;
int main()
{
float fA = 1.12345;
float fB = 1.123456;
float fC = 1.12345678;
double dD = 1.234567891234;
cout << "fA = " << fA << endl;
cout << "fB = " << fB << endl;
cout << "fC = " << dD << endl;
return 0;
}
未能测出 double 位数的代码:
#include <stdio.h>
int main()
{
float fA = 1.12345;
float fB = 1.123456;
float fC = 1.1234567;
float fD = 1.1;
double d1 = 1.1234567891234567;
double d2 = 1.0;
printf("%f\n",fA);
printf("%f\n",fB);
printf("%f\n",fC);
printf("%f\n",fD);
printf("%lf\n",d1);
printf("%lf\n",d2);
return 0;
}