【发布时间】:2021-02-17 05:04:53
【问题描述】:
我正在尝试在 Mac 上的此文件夹 /Users/xxx/yyy/zzz/priya 中创建一个文件。
FILE *f;
f = fopen("/Users/xxx/yyy/zzz/priya/program.txt", "w");
if (f == NULL) {
printf("unable to open ");
} else {
fprintf(f, "log presents ...\n");
}
但每次我“无法打开”。所有文件夹都有读写权限。但不能给Macintosh HD读写权限。这是不创建文件的原因吗?任何提示都会对我有所帮助。
【问题讨论】:
-
/Users/xxx/yyy/zzz/priya的权限是什么?您的程序中的路径也与您的问题陈述中的路径不匹配?您能否为正确的目录显示ls -l的实际输出?你也以用户 xxx 的身份运行程序吗? -
/Users/xxx/yyy/zzz 是有效路径吗?
-
fopen将分配errno。您可以检查它以查看呼叫失败的原因。例如:if( (f=fopen(path, mode)) == NULL) { perror(path);}