代码如下:
#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我不能打开文件夹写?
发布于 2018-06-08 09:29:57
之所以会出现这种情况,是因为您试图打开一个用于写入的文件夹。根据 documentation,您可以得到[EISDIR]错误:
[EISDIR]命名文件是一个目录,模式需要写访问。
您可以通过打印strerror(errno))判断出哪些错误
cout << strerror(errno)) << endl;发布于 2018-06-08 09:29:48
fopen是用来打开文件而不是文件夹的,您确定cpp是一个文件夹还是您做错了?
https://stackoverflow.com/questions/50757421
复制相似问题