阅读背景:

提取文本中任意 浮点数

来源:互联网 

//d.txt为下面一行内容:( 去掉前面的// )
//01.2,3.45;5.6789 -0.12345678901234 abc 1234567890.123456789123456789 1e300 0
#include <stdio.h>
int n,r;
double d;
FILE *f;
void main() {
    f=fopen("d.txt","r");
    n=0;
    while (1) {
        r=fscanf(f,"%lf",&d);
        if (1==r) {
            n++;
            printf("[%d]==%.15lg\n",n,d);//可以试试注释掉这句以后的速度
        } else if (0==r) {
            fscanf(f,"%*c");
        } else break;
    }
    fclose(f);
}
//实际运行输出:( 去掉前面的// )
//[1]==1.2
//[2]==3.45
//[3]==5.6789
//[4]==-0.12345678901234
//[5]==1234567890.12346
//[6]==1e+300
//[7]==0
//d.txt为下面一行内容:( 去掉前面的// )
//01.2,3.45;5.678



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: