如果文件指针在C中返回NULL,如何确定文件不存在或访问权限不存在?
如果文件指针在C中返回NULL,如何确定文件不存在或访问权限不存在?我正在用Linux编写代码。并且该文件没有访问权限,但该文件存在,因此如何返回文件不存在或文件没有访问权限的不同状态 尝试打开文件后,检查如果文件指针在C中返回NULL,如何确定文件不存在或访问权限不存在?,c,linux,file-io,C,Linux,File Io,如果文件指针在C中返回NULL,如何确定文件不存在或访问权限不存在?我正在用Linux编写代码。并且该文件没有访问权限,但该文件存在,因此如何返回文件不存在或文件没有访问权限的不同状态 尝试打开文件后,检查errno的值: if (NULL == (fp = fopen("myfile.txt", "r"))) { if (ENOENT != errno) { fprintf(stderr, "Failed to open file: %s\n", strerro
errno
的值:
if (NULL == (fp = fopen("myfile.txt", "r")))
{
if (ENOENT != errno)
{
fprintf(stderr, "Failed to open file: %s\n", strerror(errno));
}
else
{
fprintf(stderr, "file does not exist\n");
}
}
不包含相关文件路径的错误消息是我最喜欢的事情之一:if(fp==NULL)perror(path);