Name
getline function template — Reads a line into a string
Synopsis
template<class charT, class traits, class Allocator> basic_istream<charT,traits>& getline(basic_istream<charT,traits>& in, basic_string<charT,traits,Allocator>& str, charT delim); // istream& getline(istream& in, string& str, char delim); template<class charT, class traits, class Allocator> basic_istream<charT,traits>& getline(basic_istream<charT,traits>& in, basic_string<charT,traits,Allocator>& str); // istream& getline(istream& in, string& str);
The getline
function
template reads a line of text from an input stream into the string
str
. It starts by creating a
basic_istream::sentry(in
,
true)
object. If the sentry
object evaluates to true
,
getline
erases str
then reads characters from in
and appends them to str
until end-of-file is reached or
delim
is read. (The delim
character is read from the stream
but not appended to the string.) Reading also stops if max_size( )
characters have been stored in
the string, in which case ios_base::failbit
is set. If no characters
are read from the stream, ios_base::failbit
is set. The return value
is in
.
The second form of getline
uses a newline as the delimiter, that is, it returns getline(in
, str
, in.widen('\n'))
.
See Also
operator>> function
template, basic_istream
in
<istream>
, basic_istream::sentry
in <istream>
Get C++ In a Nutshell now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.