none
fscanf(fp,"%f",&z); 和fscanf(fp,"%s",str);z=atof(str); RRS feed

  • 问题

  • char str[250]; float z; fscanf(fp,"%f",&z); 文件正常打开了,此代码读数不正确。 将fscanf(fp,"%f",&z);换成fscanf(fp,"%s",str);z=atof(str);读数正确了。

    WHY?谢谢!! 数据文件是带制表分隔符的TXT文件。VC++6.0

    2010年11月22日 1:38

答案

全部回复

  • 你的文件如果是按字符串存的当然不能直接用float型的指针读取

    因该转换一下

    2010年11月22日 1:43
  • 数据格式:

    1924
    36378709.86
    36378714.54
    36378719.21
    36378723.89
    36378740.64
    36378757.39
    36378761.56

    。。

    将36378709.86读成了36378708.00等等。

    2010年11月22日 1:49