来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/10/06 02:01:31
C语言 第12题为什么错 13题呢
EOF只是个常量,值为-1.考虑以下代码:
int c = fgetc(fp);
while (c != EOF) {
//do something;
c = fgetc(fp);
}
如果用在文本文件上,字符不可能小于0,所以没问题.而二进制文件则不同,内容可能会有-1的,所以无法判断.
所以判断文件是否读完用feof才不会出问题 再答: 13题,fgetc需要文件有读取的权限,而w是以只写方式打开的,所以会出错