Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All
Important This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here.


Gets a line from the input stream.

basic_istream& getline(
   char_type *_Str, 
   streamsize _Count
basic_istream& getline(
   char_type *_Str, 
   streamsize _Count, 
   char_type _Delim



The number of characters to read from strbuf.


The character that should terminate the read if it is encountered before _Count.


A string in which to write.

The stream (*this).

The first of these unformatted input functions returns getline(_Str, _Count, widen('\n')).

The second function extracts up to _Count - 1 elements and stores them in the array beginning at _Str. It always stores the string termination character after any extracted elements it stores. In order of testing, extraction stops:

  • At end of file.

  • After the function extracts an element that compares equal to _Delim, in which case the element is neither put back nor appended to the controlled sequence.

  • After the function extracts _Count - 1 elements.

If the function extracts no elements or _Count - 1 elements, it calls setstate(failbit). In any case, it returns *this.

// basic_istream_getline.cpp
// compile with: /EHsc
#include <iostream>
using namespace std;

int main( ) 
   char c[10];

   cin.getline( &c[0], 5, '2' );
   cout << c << endl;





Header: <istream>

Community Additions

© 2015 Microsoft