Namespaces
Variants

std::basic_filebuf<CharT,Traits>:: showmanyc

From cppreference.net
protected :
virtual std:: streamsize showmanyc ( )
(опционально)

Если реализовано, возвращает количество символов, оставшихся для чтения из файла.

Содержание

Возвращаемое значение

Количество символов, доступных для чтения из файла, или - 1 если был достигнут конец файла.

Примечания

Эта функция является опциональной. Если она не реализована, функция возвращает 0 (поскольку вызывается версия базового класса std :: basic_streambuf :: showmanyc ).

Реализована или нет, эта функция обычно вызывается std :: basic_streambuf :: in_avail если область получения пуста.

Название этой функции расшифровывается как « s tream: how many c haracters?» (поток: сколько символов?), поэтому произносится « S how many C », а не «show many C».

Пример

Тест реализации для проверки, реализована ли функция showmanyc() для std::filebuf .

#include <fstream>
#include <iostream>
struct mybuf : std::filebuf
{
    using std::filebuf::showmanyc;
};
int main()
{
    mybuf fin;
    fin.open("main.cpp", std::ios_base::in);
    std::cout << "showmanyc() returns " << fin.showmanyc() << '\n';
}

Возможный вывод:

showmanyc() returns 254

Смотрите также

получает количество символов, немедленно доступных в области получения
(публичная функция-член std::basic_streambuf<CharT,Traits> )
извлекает уже доступные блоки символов
(публичная функция-член std::basic_istream<CharT,Traits> )