basic_istream::seekg
Перемещает положение, указанная в потоке.
basic_istream<Elem, Tr>& seekg(
pos_type pos
);
basic_istream<Elem, Tr>& seekg(
off_type off,
ios_base::seekdir way
);
Параметры
pos
Абсолютное позиционирование, в котором будет считывать указатель.off
Смещение для перемещения чтение указатель относительно way.way
Одно из перечисления ios_base::seekdir.
Возвращаемое значение
Поток (*this).
Заметки
Первый функцию-член выполняет поиск абсолютный, второй функцию-член относительный выполняет поиск.
Примечание
Не используйте второй функция-член с текстовыми файлами, поскольку в стандартном языке C — C++ не поддерживает относительные поиск в текстовых файлах.
Если значение Не пройдено, первые вызывает функцию-член newpos = rdbuf ->pubseekpos(pos), для некоторого временного объекта newpospos_type . Если значение Не пройдено, то второй вызовы функции newpos = rdbuf ->pubseekoff(off, way). В любом случае, если (off_type)newpos == (off_type)(-1) (операция перетаскивания происходит), вызовы функции istr.setstate(failbit). Обе функции возвращают значение *this.
Если true, то функции-члены Не пройдено не выполняют никаких действий.
Пример
// basic_istream_seekg.cpp
// compile with: /EHsc
#include <iostream>
#include <fstream>
int main ( )
{
using namespace std;
ifstream file;
char c, c1;
file.open( "basic_istream_seekg.txt" );
file.seekg(2); // seek to position 2
file >> c;
cout << c << endl;
}
Входные данные: basic_istream_seekg.txt
0123456789
Output
2
Требования
Заголовок:<istream>
Пространство имен: std