rpe*_*ger 1 c windows error-handling fopen file
我是 C 语言新手,我正在尝试掌握文件处理的窍门。我尝试写入此文件,但它不起作用,我不确定为什么它不起作用,有人可以帮助我吗?
#include <stdio.h>
#include <stdlib.h>
int main(){
FILE *f;
f = fopen("out.txt","w+");
if (f == NULL) {
printf("ERROR");
exit(-1);
}
char test[] = "HELLO";
fprintf (f, "%s", test);
fclose(f);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
当我检查文件是否已打开时,我不断收到“错误”消息:/
替换比较没用
printf("ERROR");
Run Code Online (Sandbox Code Playgroud)
和
perror("fopen");
Run Code Online (Sandbox Code Playgroud)
C 不需要fopen设置errno(由perror),但 POSIX 需要设置,并且 Linux 和 Windows 的常用编译器会设置它。
该错误几乎肯定是 EPERM(“权限被拒绝”)。该错误意味着以下情况之一:
好吧,其他原因也是可能的,但可能性很小,我不知道它们会是什么。
您的程序尝试在当前目录中创建或修改文件。请注意,当前目录不一定是可执行文件所在的目录。您可能试图意外写入错误的目录。
| 归档时间: |
|
| 查看次数: |
876 次 |
| 最近记录: |