如何解决fopen() 在 Windows 上工作但在 linux 中出现问题
我正在尝试在一个程序中使用 fopen()
,我正在其中创建一个新文件,然后将该文件用于另一个函数。函数创建如下:-
FILE* check=NULL;
check =fopen(convert_wchartoString(file_Name.c_str()).c_str(),"rb");
if(check==NULL)
{
cout<<"Unable to open";
}
现在,问题是 fopen 在 linux 中返回 NULL,但在 windows 中它正在工作。我不确定为什么会出现这个问题。我已经调试了 file_name
的值,并且在两个平台上都运行良好。请提出一些可能有问题的建议?
更新:-
好像是路径问题。目前,file_name
有 C:\files
的路径,但是当我尝试在 wsl 中运行相同的代码时,它不起作用。 wsl 中的路径是 /mnt/c/files
。但是当试图将此路径提供给 file_name
时。它也不起作用。是否存在相同的权限问题,或者我是否需要修改路径?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。