std::basic_istream<CharT,Traits>:: tellg

From cppreference.com
pos_type tellg ( ) ;

Returns input position indicator of the current associated streambuf object.

Behaves as UnformattedInputFunction , except that gcount() is not affected. After constructing and checking the sentry object, if fail ( ) == true , returns pos_type ( - 1 ) . Otherwise, returns rdbuf ( ) - > pubseekoff ( 0 , std:: ios_base :: cur , std:: ios_base :: in ) .

Parameters

(none)

Return value

The current position of the get pointer on success, pos_type ( - 1 ) on failure.

Exceptions

failure if an error occurred (the error state flag is not goodbit ) and exceptions() is set to throw for that state.

If an internal operation throws an exception, it is caught and badbit is set. If exceptions() is set for badbit , the exception is rethrown.

Example

#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';
}

Output:

After reading the word "Hello," tellg() returns 6

See also

[virtual]
repositions the file position, using relative addressing
(virtual protected member function of std::basic_filebuf<CharT,Traits> )
[virtual]
repositions the next pointer in the input sequence, output sequence, or both, using relative addressing
(virtual protected member function of std::basic_stringbuf<CharT,Traits,Allocator> )
[virtual]
repositions the next pointer in the input sequence, output sequence, or both, using relative addressing
(virtual protected member function of std::strstreambuf )
sets the input position indicator
(public member function)
returns the output position indicator
(public member function of std::basic_ostream<CharT,Traits> )
sets the output position indicator
(public member function of std::basic_ostream<CharT,Traits> )