How to extract data from a file in C

倖福魔咒の 提交于 2019-12-04 21:26:41

Try this

#include <stdlib.h>
#include <stdio.h>
#include <string.h>

#define MAX_ROW 256

int main()
{
    FILE  *file;
    float  data[MAX_ROW][6];
    int    index;
    float *row;

    file = fopen("file.dat", "r");
    if (file == NULL)
    {
        perror("fopen()");
        return 1;
    }

    index = 0;
    row   = data[0];
    while (fscanf(file, "%f%f%f%f%f%f", &row[0], &row[1], &row[2], &row[3], &row[4], &row[5]) == 6)
    {
        printf("[%f;%f;%f;%f;%f;%f]\n", row[0], row[1], row[2], row[3], row[4], row[5]);
        row = data[index++];
    }
    fclose(file);

    return 0;
}

note that you could need to make data dynamically allocated to be able to resize it.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!