从文件中读取双数字- c.

  • 本文关键字:数字 读取 文件 c
  • 更新时间 :
  • 英文 :


我有一个充满数据行的文件:每行包含:
'char'空格'double'。例句:

a 17.322n
c 9.45n

我想"吃掉"n和字符,只读取双精度数字。做这件事最好的方法是什么?

谢谢,如果我有英语错误,我很抱歉

我认为简单的fscanf就能完成这项工作

#include <stdio.h>
int main()
{
FILE* f = fopen("test", "r");
float n;
while(fscanf(f, "%*[a-z]%f ", &n) == 1)
printf("%f, ", n);
return 0;
}
  • "%*"忽略读取的所有内容
  • "[a-z]"读取'a'到'z'范围内的字符
  • "%f"读取一个单精度浮点数(即float)
  • " "忽略所有空白字符
  • fscanf在读取错误(例如文件结束)或读取值的情况下返回EOF在我们的例子中是1

相关内容

  • 没有找到相关文章

最新更新