问题描述
int main() {
FILE* check=NULL;
check=fopen("C:\\Files\\open.txt","rb");
if(check==NULL)
{
cout<<"Error";
}
else
{
//do something
}
}
现在,在上面的程序中,windows 路径工作正常,即 "C:\\Files\\open.txt"
但是当我尝试通过将路径更改为 /mnt/c/Files/open.txt
在 wsl(linux) 中执行相同的程序时,出现错误。我不确定以这种方式设置路径是否是 linux 中 fopen()
的标准程序。 请建议我克服这个错误。
解决方法
尝试将 perror("fopen")
添加到 main 函数并分享输出。没有输出就很难回答这个问题。
我认为问题可能是:
您无权访问 /mnt
或没有此类文件或该文件没有读取权限...等。