【发布时间】:2012-12-12 13:49:42
【问题描述】:
我有一个如下所示的字符矩阵
char files[4][10];
并且在矩阵中这些字符数组被保存。
文件1.txt 文件2.txt 文件 3.txt 文件4.txt当我尝试对这个矩阵使用 fopen 时,我无法打开文件。我的代码是这样的:
FILE *file;
file = fopen(files[0],"rb");
if(file == NULL){
printf("cannot open");
}
else printf("opened");
这段代码给出了输出:无法打开。我在哪里做错了?
【问题讨论】:
-
1) 文件是否在同一目录中? 2)你检查
files[0]是否真的包含正确的字符串? -
printf("cannot open %s: %s\n", files[0], strerror(errno));找出失败的原因以及files[0]是否包含您所相信的内容。 -
是的,它包含正确的文件并且它们在同一个目录中
-
@user1772101,程序二进制文件和文件是否在同一目录中无关紧要。程序在同一个目录中执行确实很重要。
-
我从另一个文件中读取这些文件名。因此我认为问题不在于。