我正在运行Linux操作系统并尝试在C编译器中打开文件,如下所示:
file = fopen ("list.txt", "r");
但文件没有打开!
当我按照这样的完整路径时:
file = fopen ("/home/rami/Desktop/netfilter/list.txt", "r");
它正在运作!
为什么第一个例子不起作用?
答案 0 :(得分:5)
答案 1 :(得分:2)
您知道为什么该文件未打开?
始终检查fopen()
(以及大多数其他功能)的返回值并报告可读错误。
file = fopen("file.txt", "r");
if (!file) {
perror("file open");
exit(EXIT_FAILURE);
}
我看到你已经发现了你的问题,但以上是对未来的建议(并改变你当前的项目)
答案 2 :(得分:0)
可执行文件是否也与list.txt的目录相同?
编辑:其实没关系。根据另一个答案,它是当前工作的目录。