【发布时间】:2014-03-10 16:55:42
【问题描述】:
我正在使用以下代码以写入模式打开文件:
FILE *pf = fopen("c:\\test.txt", "w");
if (NULL == pf)
{
printf("File pointer is NULL");
}
有时文件被创建,我得到了正确的文件指针,但有时我得到日志“文件指针为空”,即使文件是在 C 驱动器上创建的。我该如何解决?
【问题讨论】:
-
尝试打印
strerror(errno),这可能会提示fopen失败的原因。 -
使用文件后必须
fclose()。 -
您运行的是什么版本的 Windows?在驱动器的根目录中创建文件有点不寻常。通常,您希望在自己的用户文件夹中执行此操作以确保适当的权限。
-
您需要管理员权限才能写入 C:\。您是否以管理员用户身份运行?
-
我这对你有帮助。 stackoverflow.com/questions/230062/…
标签: c fopen null-pointer