superspice 发表于 2009-8-30 23:45:41

为什么从ini中读出来double值是这样

我用的是CVI7.1,我手动写了一个ini文件保存配置数据
比如:

Freq_List_Trans_01=955.2
Freq_List_Trans_02=1840.4
......................

然后再程序中使用inifile.fp提供的函数进行配置值得读取,如下
double f;
Ini_GetDouble (iniText, "Freq_List_Trans", Freq_List_Trans_01, &f);
Ini_GetDouble (iniText, "Freq_List_Trans", Freq_List_Trans_02, &f);

在断点调试的时候看f1和f2x的值为:
f=955.200000000000050
f=1840.40000000000100

为什么会多出点东西了,不理解??????????????????

netcreature 发表于 2009-8-31 09:02:51

这要涉及到计算机的最基本部分的数制转换了,浮点数在计算机中表示只是一个近似值!
页: [1]
查看完整版本: 为什么从ini中读出来double值是这样