endl


manipulator function
<ostream>
ostream& endl ( ostream& os );

Insert newline and flush

Inserts a new-line character.
Additionally, for buffered streams, endl flushes the buffer (i.e. writes all unwritten characters in the buffer to the output sequence, see ostream::flush).

Parameters

os
Output stream on which the insertion is performed.
Because this function is designed as a manipulator, it can be used directly with no arguments in conjunction with the insertion operator (<<) on output streams (see example).


Return Value

The same stream object on which the operation was performed (parameter os).

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// endl
#include <iostream>
using namespace std;

int main () {

  int a=100;
  double b=3.14;

  cout << a;
  cout << endl;              // manipulator inserted alone
  cout << b << endl << a*b;  // manipulator in concatenated insertion
  endl (cout);               // endl called as a regular global function

  return 0;
}


This example demonstrates different ways of using a manipulator.

Basic template declaration

1
2
template <class charT, class traits>
  basic_ostream<charT,traits>& endl ( basic_ostream<charT,traits>& os );


See also