首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >fopen("filename","wb")返回null

fopen("filename","wb")返回null
EN

Stack Overflow用户
提问于 2018-06-08 09:24:17
回答 2查看 1.2K关注 0票数 0

代码如下:

代码语言:javascript
复制
#include <iostream>

using namespace std;
int main(){
    FILE* to = NULL; 
    to = fopen("cpp", "wb");
    if(to != NULL)
        cout << 1 << endl ;
    cout << 2 << endl;
}

使用选项g++编译,然后使用run.Returns "2".To使用ls -al :drwxr-xr-x 2 anyone staff 64 6 8 08:31 cpp查看cpp文件夹

为什么它返回"2".Why我不能打开文件夹写?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-06-08 09:29:57

之所以会出现这种情况,是因为您试图打开一个用于写入的文件夹。根据 documentation,您可以得到[EISDIR]错误:

[EISDIR] 命名文件是一个目录,模式需要写访问。

您可以通过打印strerror(errno))判断出哪些错误

代码语言:javascript
复制
cout << strerror(errno)) << endl;
票数 0
EN

Stack Overflow用户

发布于 2018-06-08 09:29:48

fopen是用来打开文件而不是文件夹的,您确定cpp是一个文件夹还是您做错了?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50757421

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档