C混乱中的文件处理(从文件中读取矩阵)
我正在学习用C语言处理文件,我对一些事情感到困惑。假设我想从文件中读取矩阵。这是我的密码:C混乱中的文件处理(从文件中读取矩阵),c,file,matrix,C,File,Matrix,我正在学习用C语言处理文件,我对一些事情感到困惑。假设我想从文件中读取矩阵。这是我的密码: #include <stdio.h> #include <stdlib.h> void readMatrix(int n,int m,int a[][30],FILE *file1) { int i,j; for(i=0;i<n;i++) for(j=0;j<m;j++) { fscan
#include <stdio.h>
#include <stdlib.h>
void readMatrix(int n,int m,int a[][30],FILE *file1)
{
int i,j;
for(i=0;i<n;i++)
for(j=0;j<m;j++)
{
fscanf(file1,"%d",&a[i][j]);
}
}
void writeMatrix(int n,int m,int a[][30],FILE *file2)
{
int i,j;
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
fprintf(file2,"%d ",a[i][j]);
fprintf(file2,"\n");
}
}
int main()
{
int n,m,a[30][30];
FILE *file1, *file2;
file1=fopen("file1.in","r");
if(file1==0)
{
printf("Error!\n");
exit(-1);
}
file2=fopen("file2.out","w");
if(file2==0)
{
printf("Error!\n");
exit(-1);
}
fscanf(file1,"%d %d ",&n,&m);
readMAtrix(n,m,a,file1);
writeMAtrix(n,m,a,file2);
fclose(fis1);
fclose(fis2);
return 0;
}
#包括
#包括
void readMatrix(int n,int m,int a[][30],文件*file1)
{
int i,j;
对于(i=0;iError!
不是有用的错误消息。请尝试if((file1=fopen(path,mode))==NULL){perror(path);exit(exit_FAILURE);}
将错误消息写入stderr,并说明失败原因。签出:您无法阅读不在书架上的书籍,但希望您的电脑读取不存在的文件。可能是file1.in
不存在,或者程序未在文件所在的目录中查找。问题和显示更多信息:如何运行该程序?文件1在哪里?
?我知道文件1不存在。我的问题是如何创建此文件?我手动创建此文件(通过转到程序位置->左键单击->新建->文件.txt),或者程序中有其他方法?