C语言 fgetc()
函数 读取文件指针的一个字符,并且将指针移动到下一个字符。
该函数不能单独使用,因为读取文件需要先打开文件 fopen() 函数,读取完成之后还需要关闭文件fclose() 函数。
语法
int fgetc (FILE *fp);
参数
- fp:文件指针。
返回值
返回int类型,如果到达文件末尾或发生读错误,则返回 EOF。
注意
从返回值可以知道到达文件末尾或者出错都会返回EOF
,所以不能使用EOF常量判断文件是否到达文件末尾。
可以使用feof() 和 ferror() 函数帮助我们判断是否到达文件末尾。
例子
现介绍一个简单的例子,了解C语言 fgetc()
函数 的使用方法。
先准备一个文件yxjc123.txt 内容如下:
C语言文件函数fgetc()
yxjc123.com 介绍C语言文件函数的使用。
这是该文件的第3行内容。
这是该文件的第4行内容。
这里结合 fopen(),fclose()、ferror()函数介绍该函数的使用:
#include <stdio.h>
#include<math.h>
int main( )
{
FILE *file; //定义文件指针
char c;
file = fopen("d:/yxjc123.txt", "r");//打开文件
if(NULL == file) {
perror("打开文件失败");
return -1;
}
//判断是否达到文件末尾指针
while ((c = fgetc(file)) != EOF) {
printf("%c", c);
}
puts("\n");
//通过ferror判断是否读取出错
if(ferror(file)){
puts("读取文件出错");
}else{
puts("读取文件成功");
}
fclose(file); //关闭文件
getchar();
return 0;
}
输出:
中文乱码问题
需要将文件编码格式改为ANSI
编码格式。