我在 VMWare Fusion 上使用 Ubuntu 18.04。我不知道为什么在 C 中使用 fopen() 函数无法打开文件。代码如下。
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
int main(void) {
char *fname = "file.txt";
FILE *fp;
if((fp = fopen(fname, "w")) != NULL) {
fprintf(stderr, "open error for %s, errno = %d\n", fname, errno);
exit(1);
}
printf("opened!\n");
free(fp);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
结果如下。
$ ./a.out
open error for file.txt, errno = 0
Run Code Online (Sandbox Code Playgroud)
我的 Ubuntu 内存就是这样。
$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 1.9G 0 1.9G 0% /dev
tmpfs 393M …Run Code Online (Sandbox Code Playgroud)