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()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。