开发平台(Platform): (Ex: VC++, GCC, Linux, ...)
VC2010
问题(Question):
使用档案指标来读取一个文字档,最后一行为换行符号,会读两次
程式码(Code):(请善用置底文网页, 记得排版)
#include<stdlib.h>
#include<stdio.h>
int main(){
FILE *fp;
double value_tmp;
fp=fopen("C:\\source_data.txt","r");
if(!fp)
exit(0)
while(!feof(fp)){
fscanf(fp,"%lf",&value_tmp); //<-这边有问题
printf("%lf",value_tmp);
}
return 0;
}
假设我原本的文字档内是这样
1.5
2.6
3.6
1.8
2.7
(end of file)
因为设计的关系,所以最后一个值会再空一行
那读值出来就会变成这样
1.5
2.6
3.6
1.8
2.7
2.7 <-会多出现一次
我该如何解决这个问题?总不能每次都去修改文字档,把最后一个换行符号弄掉吧?
先谢谢了