std:: ferror
From cppreference.net
C++
Input/output library
| I/O manipulators | ||||
| Print functions (C++23) | ||||
| C-style I/O | ||||
| Buffers | ||||
|
(C++23)
|
||||
|
(
C++98/26*
)
|
||||
|
(C++20)
|
||||
| Streams | ||||
| Abstractions | ||||
| File I/O | ||||
| String I/O | ||||
| Array I/O | ||||
|
(C++23)
|
||||
|
(C++23)
|
||||
|
(C++23)
|
||||
|
(
C++98/26*
)
|
||||
|
(
C++98/26*
)
|
||||
|
(
C++98/26*
)
|
||||
| Synchronized Output | ||||
|
(C++20)
|
||||
| Types | ||||
| Error category interface | ||||
|
(C++11)
|
||||
|
(C++11)
|
C-style I/O
| Types and objects | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Functions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
ヘッダーで定義
<cstdio>
|
||
|
int
ferror
(
std::
FILE
*
stream
)
;
|
||
指定されたストリームのエラーをチェックします。
目次 |
パラメータ
| stream | - | チェックするファイルストリーム |
戻り値
ファイルストリームでエラーが発生した場合はゼロ以外の値、 0 それ以外の場合。
例
このコードを実行
#include <clocale> #include <cstdio> #include <cstdlib> #include <cwchar> int main() { const char *fname = std::tmpnam(nullptr); std::FILE* f = std::fopen(fname, "wb"); std::fputs("\xff\xff\n", f); // 有効なUTF-8文字シーケンスではありません std::fclose(f); std::setlocale(LC_ALL, "en_US.utf8"); f = std::fopen(fname, "rb"); std::wint_t ch; while ((ch=std::fgetwc(f)) != WEOF) // UTF-8として読み取りを試行 std::printf("%#x ", ch); if (std::feof(f)) puts("EOF indicator set"); if (std::ferror(f)) puts("Error indicator set"); }
出力:
Error indicator set
関連項目
|
エラーをクリア
(関数) |
|
|
ファイル終端をチェック
(関数) |
|
|
エラーが発生したかチェック
(
std::basic_ios<CharT,Traits>
の
公開メンバ関数)
|
|
|
Cドキュメント
for
ferror
|
|