std::basic_istream<CharT,Traits>:: seekg
|
basic_istream
&
seekg
(
pos_type pos
)
;
|
(1) | |
|
basic_istream
&
seekg
(
off_type off,
std::
ios_base
::
seekdir
dir
)
;
|
(2) | |
현재 연결된
streambuf
객체의 입력 위치 표시자를 설정합니다.
다른 작업을 수행하기 전에,
seekg
는
eofbit
를 지웁니다.
|
(C++11부터) |
seekg
는
UnformattedInputFunction
처럼 동작하지만,
gcount()
는 영향을 받지 않습니다. sentry 객체를 구성하고 검사한 후에,
목차 |
매개변수
| pos | - | 입력 위치 표시자를 설정할 절대 위치 | ||||||||
| off | - | 입력 위치 표시자를 설정할 상대 위치 (양수 또는 음수) | ||||||||
| dir | - |
상대 오프셋을 적용할 기준 위치를 정의합니다. 다음 상수 중 하나일 수 있습니다:
|
반환값
* this
예외
내부 연산에서 예외가 발생하면, 해당 예외는 포착되고
badbit
이 설정됩니다. 만약
exceptions()
에서
badbit
가 설정되어 있다면, 예외가 재발생됩니다.
참고 사항
seekg(n) 은 반드시 seekg(n, ios::beg) 와 동등하지 않습니다. std:: basic_ifstream 의 경우, 예를 들어 절대 위치 n 이 tellg() 에서 와야 합니다.
예제
#include <iostream> #include <sstream> #include <string> int main() { std::string str = "Hello, world"; std::istringstream in(str); std::string word1, word2; in >> word1; in.seekg(0); // rewind in >> word2; std::cout << "word1 = " << word1 << '\n' << "word2 = " << word2 << '\n'; }
출력:
word1 = Hello, word2 = Hello,
결함 보고서
다음의 동작 변경 결함 보고서들은 이전에 발표된 C++ 표준에 소급 적용되었습니다.
| DR | 적용 대상 | 게시된 동작 | 올바른 동작 |
|---|---|---|---|
| LWG 129 | C++98 | 실패를 나타낼 방법이 없었음 |
실패 시
failbit
설정
|
| LWG 136 | C++98 |
seekg
가 출력 스트림을 설정할 수 있었음
|
입력 스트림만 설정 |
| LWG 537 | C++98 |
off
의 타입이
off_type&
였음
|
off_type
로 수정됨
|
참고 항목
|
입력 위치 표시자를 반환합니다
(public member function) |
|
|
출력 위치 표시자를 반환합니다
(
std::basic_ostream<CharT,Traits>
의 public member function)
|
|
|
출력 위치 표시자를 설정합니다
(
std::basic_ostream<CharT,Traits>
의 public member function)
|
|
|
seekpos
(
)
를 호출합니다
(
std::basic_streambuf<CharT,Traits>
의 public member function)
|
|
|
[virtual]
|
절대 주소 지정을 사용하여 파일 위치를 재배치합니다
(
std::basic_filebuf<CharT,Traits>
의 virtual protected member function)
|
|
[virtual]
|
절대 주소 지정을 사용하여 입력 시퀀스, 출력 시퀀스 또는 둘 모두의 다음 포인터를 재배치합니다
(
std::basic_stringbuf<CharT,Traits,Allocator>
의 virtual protected member function)
|
|
[virtual]
|
절대 주소 지정을 사용하여 입력 시퀀스, 출력 시퀀스 또는 둘 모두의 다음 포인터를 재배치합니다
(
std::strstreambuf
의 virtual protected member function)
|
|
seekoff
(
)
를 호출합니다
(
std::basic_streambuf<CharT,Traits>
의 public member function)
|
|
|
[virtual]
|
상대 주소 지정을 사용하여 파일 위치를 재배치합니다
(
std::basic_filebuf<CharT,Traits>
의 virtual protected member function)
|
|
[virtual]
|
상대 주소 지정을 사용하여 입력 시퀀스, 출력 시퀀스 또는 둘 모두의 다음 포인터를 재배치합니다
(
std::basic_stringbuf<CharT,Traits,Allocator>
의 virtual protected member function)
|
|
[virtual]
|
상대 주소 지정을 사용하여 입력 시퀀스, 출력 시퀀스 또는 둘 모두의 다음 포인터를 재배치합니다
(
std::strstreambuf
의 virtual protected member function)
|