std::basic_istream<CharT,Traits>::tellg
pos_type tellg(); |
Возвращает указатель на текущую позицию ввода связанного streambuf объекта.
Ведёт себя как UnformattedInputFunction, за исключением того, что gcount() не затрагивается. После построения и проверки объекта-стражи, если fail() == true, возвращает pos_type(-1). В противном случае возвращает rdbuf()->pubseekoff(0, std::ios_base::cur, std::ios_base::in).
Параметры
(нет)
Возвращаемое значение
Текущая позиция указателя get при успехе, pos_type(-1) при ошибке.
Исключения
failure если произошла ошибка (флаг состояния ошибки не goodbit) и exceptions() установлен для выброса исключения в этом состоянии. Если внутренняя операция вызывает исключение, оно перехватывается, и badbit устанавливается. Если exceptions() установлен для badbit, исключение перебрасывается повторно.
Пример
#include <iostream>
#include <sstream>
#include <string>
int main()
{
std::string str = "Hello, world";
std::istringstream in(str);
std::string word;
in >> word;
std::cout << "After reading the word \"" << word
<< "\" tellg() returns " << in.tellg() << '\n';
}Вывод:
After reading the word "Hello," tellg() returns 6
См. также
|
[virtual] | переставляет указатель на позицию файла, используя относительную адресацию (виртуальный защищенный член-функция std::basic_filebuf<CharT,Traits>) |
|
[virtual] | переставляет указатель следующего символа в последовательности ввода, вывода или обоих, используя относительную адресацию (виртуальный защищенный член-функция std::basic_stringbuf<CharT,Traits,Allocator>) |
|
[virtual] | переставляет указатель следующего символа в последовательности ввода, вывода или обоих, используя относительную адресацию (виртуальный защищенный член-функция std::strstreambuf) |
| устанавливает указатель на позицию ввода (общедоступная функция-член) |
|
| возвращает указатель на позицию вывода (общедоступная функция-член std::basic_ostream<CharT,Traits>) |
|
| устанавливает указатель на позицию вывода (общедоступная функция-член std::basic_ostream<CharT,Traits>) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/io/basic_istream/tellg