C++ getc() 函数
getc() 函数原型
int getc(FILE* stream);
getc()
函数接收一个文件流作为其参数,并返回该流中的下一个字符,字符以整数类型呈现。
getc() 与 fgetc() 的区别
C++ 中的 getc()
和 fgetc()
函数几乎相似。然而,它们之间存在一些差异。
getc()
函数可以实现为宏,而 fgetc()
函数不能作为宏使用。
此外,getc()
函数进行了高度优化,因此相比于 fgetc()
,调用 getc()
可能会更快。因此,在大多数情况下,更倾向于使用 getc()
。
它定义在 <cstdio>
头文件中。
getc() 参数
stream
:要读取字符的文件流。
getc() 返回值
- 成功时,
getc()
函数返回读取的字符。 - 失败时返回 EOF。
- 如果失败是由文件末尾引起的,它设置 eof 指示符。
- 如果失败是由其他错误引起的,它设置错误指示符。
示例:getc() 函数如何工作
#include <cstdio>
int main()
{
int c;
FILE *fp;
fp = fopen("file.txt", "r");
if (fp)
{
while(feof(fp) == 0)
{
c = getc(fp);
putchar(c);
}
}
else
perror("文件打开失败");
fclose(fp);
return 0;
}
当你运行程序时,可能的输出会是:
Hello World!