fopen函数返回值总为NULL

2025-04-16 02:30:20
推荐回答(2个)
回答1:

有可能是磁盘的写权限问题。

写个最简单的文件读写程序。
#include 
int main() {
  FILE *fp = fopen("d:\\aaa.txt", "w+");
  if (fp == null) {
      printf("error\n");
  } else {
    printf("print ok!\n");
    fclose(fp);
  }
  return 0;
}
fopen("d:\\aaa.txt", "w+");
改成fopen("aaa.txt", "w+");
测试当前位置写文件,与指定位置写文件,可以确定原因。

回答2:

有可能是磁盘的写权限问题。
写个最简单的文件读写程序。
#include
int main() {
FILE *fp = fopen("d:\\aaa.txt", "w+");
if (fp == null) {
printf("error\n");
} else {
printf("print ok!\n");
fclose(fp);
}
return 0;
}
fopen("d:\\aaa.txt", "w+");
改成fopen("aaa.txt", "w+");
测试当前位置写文件,与指定位置写文件,可以确定原因。