以下是在读取空文件时给出分段错误的示例代码.
#include <stdio.h>
main()
{
FILE *fp;
int i = 0;
char buffer[20];
printf("1\n");
fp = fopen("/home/amadhab/aa", "r+");
printf("2\n");
i = fread(buffer, 1, 1, fp);
printf("3\n");
printf("i = %d\n", i);
}
Run Code Online (Sandbox Code Playgroud)
给o/p一个
1
2
Segmentation fault
Run Code Online (Sandbox Code Playgroud)
确实fread()无法读取空(0KB)文件?