Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在C中从.txt文件读入数组?_C_Arrays - Fatal编程技术网

在C中从.txt文件读入数组?

在C中从.txt文件读入数组?,c,arrays,C,Arrays,我想将存储在.txt文件中的4列中的每一列读取到各自的数组中,每个列之间用空格隔开。文本文件可能有数百行,因此需要一直读取到文件末尾 例如: 3.4407280e+003 6.0117545e+003 8.0132664e+002 2.5292922e+003 3.4163843e+003 5.9879421e+003 7.7792044e+002 2.5058547e+003 因此通常是数组1,包含第一列和最左边列的所有行,依此类推。是您的朋友: static const int MAX_F

我想将存储在.txt文件中的4列中的每一列读取到各自的数组中,每个列之间用空格隔开。文本文件可能有数百行,因此需要一直读取到文件末尾

例如:

3.4407280e+003 6.0117545e+003 8.0132664e+002 2.5292922e+003
3.4163843e+003 5.9879421e+003 7.7792044e+002 2.5058547e+003
因此通常是数组1,包含第一列和最左边列的所有行,依此类推。

是您的朋友:

static const int MAX_FILE_ROWS = 200;

double lines[MAX_FILE_ROWS][4];
FILE *file = fopen("myfile.txt", "r");

for (int i = 0; i < MAX_FILE_ROWS; i++)
{
    if (feof(file))
        break;

    fscanf(file, "%lf %lf %lf %lf", &(lines[i][0]), &(lines[i][1]), &(lines[i][2]), &(lines[i][3]));
}

fclose(file);
static const int MAX_FILE_ROWS=200;
双线[MAX_FILE_ROWS][4];
FILE*FILE=fopen(“myfile.txt”、“r”);
对于(int i=0;i

然后,行应该包含您需要的数据。

您希望它具有什么数据结构?到目前为止你得到了什么?它是如何工作的?你应该指定一行上是否会有超过4个数字。啊,谢谢你,richard,要仔细检查方法,我如何将它打印到屏幕上。感谢如果您需要知道字段是否存在,请不要忘记添加对读取元素数量的检查,并将行[row][column]的值设置为某个哨兵值。@user1377485:您可以在fscanf()行--printf(“%f%f%f%f\n”,行[i][0],行[i][1],行[i]之后立即包含一个printf(或fprintf(),视情况而定)[2] ,第[i][3]行;——任何错误都是免费的谜题;)嘿,谢谢朱莉的印刷品,现在很好用了!我想我会做一些调整!如果我卡住了,我会再发一次:)谢谢大家:)@user1377485没问题,一定要接受答案!