c - 如何知道 C 语言中是否存在文件?

标签 c file input

我如何知道一个文件是否存在于我的 C 语言当前目录中?我正在提示用户,并尝试查看他们输入的文件是否已经存在。这是我得到的:

int a=0;
char ing[100];
FILE * inp;


while (a=0);
{
    printf("Input file name: ");
    scanf("%s", ing);
    inp=fopen(ing , "r");
        if (inp==NULL)
            a=0;
        else
            a=1;
}

每当我输入不存在的文件时,我都会发现 cmd 没有响应。每当我输入存在的内容时,它都能正常工作,这很好。我只是不知道如果 NULL 不起作用,我到底需要输入什么。

最佳答案

替换:

while (a=0)

与:

while (a==0)

检查时使用:

if( access( ing, F_OK ) != -1 ) {
    // exists
} else {
    // not exist
}

关于c - 如何知道 C 语言中是否存在文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29311364/

相关文章:

c++ - 列出 C/C++ 函数(Unix 中的代码分析)

c - 在 C 中更新全局变量

java - 如何在 Java 中获取声音文件的总时间?

c - 在C中读取文件时的错误处理

android - 更改 EditPreference 的输入类型

c++ - 为什么可以修改数组 b?

c - Linux 上的 flock 与 lockf

c++从.txt文件中删除行

language-agnostic - 自修改代码?

jquery - 从 <li> 中的 &lt;input&gt; 获取值并将值作为链接 append 到 <li> (a)