在c中,从一行读取浮点数,按空格分隔

时间:2016-01-15 15:23:25

标签: c

我有一个包含大量浮点数的行的文件。我想在行中分离这些数字但不将这个巨大的文件加载到内存中。

例如,我想从第3到第15个浮点解析并将其保存为二维矩阵中的一行。

有任何线索吗?

所有示例都与读取整行相关,但在我的情况下,这是内存不足

1 个答案:

答案 0 :(得分:0)

是的,通常建议是freadf()一行,然后解析它,但如果你在一行上有一个非常大的数据块,那么你可以零碎地吃掉它。

fscanf("%f ",&derp);
fscanf("%f ",&derp);
fscanf("%f ",&derp);
while(numberOfHerpLessThenFifteen)
{
  fscanf("%f ", &mrMatrixomatic[mahIndex++]);
}

如果格式化不完全正确,只要意识到fscanf会在可怕的火灾中窒息死亡。