std::basic_ios<CharT,Traits>:: eof
|
bool
eof
(
)
const
;
|
||
연관된 스트림이 파일 끝에 도달했으면
true
를 반환합니다. 구체적으로,
rdstate()
에서
eofbit
가 설정되어 있으면
true
를 반환합니다.
ios_base::iostate
가 설정하는 조건들의 목록은
eofbit
을 참조하십시오.
목차 |
매개변수
(없음)
반환값
true 파일 끝에 도달했을 경우, false 그 외의 경우.
참고 사항
이 함수는 가장 최근 I/O 연산에 의해 설정된 스트림 상태만 보고하며, 관련 데이터 소스를 검사하지 않습니다. 예를 들어, 가장 최근 I/O가 파일의 마지막 바이트를 반환한
get()
인 경우,
eof()
는
false
를 반환합니다. 다음
get()
호출은 아무것도 읽지 못하고
eofbit
를 설정합니다. 그때서야
eof()
가
true
를 반환합니다.
일반적인 사용에서 입력 스트림 처리는 오류 발생 시 중단됩니다.
eof()
와
fail()
를 사용하여 서로 다른 오류 조건을 구분할 수 있습니다.
예제
#include <cstdlib> #include <fstream> #include <iostream> int main() { std::ifstream file("test.txt"); if (!file) // operator! is used here { std::cout << "파일 열기 실패\n"; return EXIT_FAILURE; } // typical C++ I/O loop uses the return value of the I/O function // as the loop controlling condition, operator bool() is used here for (int n; file >> n;) std::cout << n << ' '; std::cout << '\n'; if (file.bad()) std::cout << "읽기 중 I/O 오류 발생\n"; else if (file.eof()) std::cout << "파일 끝에 성공적으로 도달함\n"; else if (file.fail()) std::cout << "정수가 아닌 데이터 발견\n"; }
참고 항목
다음 표는 가능한 모든 basic_ios 접근자( good() , fail() 등)의 값과 ios_base::iostate 플래그 조합 간의 관계를 보여줍니다:
| ios_base::iostate 플래그 |
basic_ios
접근자
|
|||||||
eofbit
|
failbit
|
badbit
|
good() | fail() | bad() | eof() | operator bool | operator! |
| false | false | false | true | false | false | false | true | false |
| 거짓 | 거짓 | 참 | 거짓 | 참 | 참 | 거짓 | 거짓 | 참 |
| 거짓 | 참 | 거짓 | 거짓 | 참 | 거짓 | 거짓 | 거짓 | 참 |
| 거짓 | 참 | 참 | 거짓 | 참 | 참 | 거짓 | 거짓 | 참 |
| 참 | 거짓 | 거짓 | 거짓 | 거짓 | 거짓 | 참 | 참 | 거짓 |
| 참 | 거짓 | 참 | 거짓 | 참 | 참 | 참 | 거짓 | 참 |
| 참 | 참 | 거짓 | 거짓 | 참 | 거짓 | 참 | 거짓 | 참 |
| 참 | 참 | 참 | 거짓 | 참 | 참 | 참 | 거짓 | 참 |
|
파일 끝 확인
(함수) |