C++ 中的fgets() 函数从给定文件流中读取指定的最大字符数。
fgets()原型
char* fgets(char* str,int count,FILE* stream);
fgets()
函数从给定的文件流中读取最多 count-1
字符并将它们存储在 str
指向的数组中。
解析会一直持续到文件结束或找到换行符 (\n)。数组str
也将包含换行符,以防万一被发现。如果没有发生错误,则会在 str
的末尾写入一个空字符。
它在<cstdio> 头文件中定义。
参数:
str
:指向存储文件内容的字符数组的指针。count
:要写入的最大字符数。stream:
读取字符的文件流。
返回:
- 成功时,fgets() 函数返回
str
,失败时返回空指针。 - 如果由于文件结束条件导致失败,则设置
eof
指示符。在这种情况下,str
的内容不会改变。 - 如果失败是由于其他错误引起的,则设置错误指示器。在这种情况下,
str
的内容是不确定的。它们甚至可能不是空终止的。
示例:fgets() 函数的工作原理
#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
int count = 10;
char str[10];
FILE *fp;
fp = fopen("file.txt","w+");
fputs("An example file\n", fp);
fputs("Filename is file.txt\n", fp);
rewind(fp);
while(feof(fp) == 0)
{
fgets(str,count,fp);
cout << str << endl;
}
fclose(fp);
return 0;
}
运行程序时,可能的输出将是:
An exampl e file Filename is file.t xt
相关用法
- C++ fgetws()用法及代码示例
- C++ fgetpos()用法及代码示例
- C++ fgetwc()用法及代码示例
- C++ fgetc()用法及代码示例
- C++ fcvt()用法及代码示例
- C++ fwscanf()用法及代码示例
- C++ fmax()用法及代码示例
- C++ fdim()用法及代码示例
- C++ fmin()用法及代码示例
- C++ fetestexcept()用法及代码示例
- C++ forward_list::unique()用法及代码示例
- C++ forward_list::emplace_front()用法及代码示例
- C++ fopen()用法及代码示例
- C++ forward_list::max_size()用法及代码示例
- C++ forward_list::reverse()用法及代码示例
- C++ feupdateenv()用法及代码示例
- C++ forward_list::swap()用法及代码示例
- C++ forward_list::front()、forward_list::empty()用法及代码示例
- C++ functional::bad_function_call用法及代码示例
- C++ find_if()用法及代码示例
注:本文由纯净天空筛选整理自 C++ fgets()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。