streambuf::xsgetn | virtual protected member function |
streamsize xsgetn ( char * s, streamsize n ); |
Get sequence of characters
Gets up to n characters from the input sequence and stores them in the array pointed by s.
If less than n characters are available in the input sequence the function returns all the available characters, as if successive calls to sbumpc were made until an EOF (or traits::eof() for other traits) was returned.
This is a virtual member function that can be redefined for a specific behavior in derived classes. Its default behavior in streambuf is to perform the expected behavior by calling repeatedly the member function sbumpc, but this may be overriden for more efficient implementations in derived classes (neither filebuf nor stringbuf do, though).
Parameters
- s
- Pointer to a block of memory where the character sequence is to be stored.
- n
- Number of characters to be gotten. This is an integer value of type streamsize.
Return Value
The number of characters gotten, returned as a value of type streamsize.Basic template member declaration
( basic_streambuf<charT,traits> )
typedef charT char_type;
streamsize xsgetn (char_type * s, streamsize n);
|
See also
streambuf::sgetn | Get sequence of characters (public member function) |
streambuf::sbumpc | Get current character and increase get pointer (public member function) |