function
<ios> <iostream>

std::left

ios_base& left (ios_base& str);
Adjust output to the left
Sets the adjustfield format flag for the str stream to left.

When adjustfield is set to left, the output is padded to the field width (width) by inserting fill characters (fill) at the end, effectively adjusting the field to the left.

The adjustfield format flag can take any of the following values (each with its own manipulator):

flag valueeffect when set
internalthe output is padded to the field width by inserting fill characters at a specified internal point.
leftthe output is padded to the field width appending fill characters at the end.
rightthe output is padded to the field width by inserting fill characters at the beginning.

For standard streams, the adjustfield flag is set to right on initialization.

Parameters

str
Stream object whose adjustfield format flag is affected.
Because this function is a manipulator, it is designed to be used alone with no arguments in conjunction with the insertion (<<) and extraction (>>) operations on streams (see example below).

Return Value

Argument str.

Example

1
2
3
4
5
6
7
8
9
10
// modify adjustfield using manipulators
#include <iostream>     // std::cout, std::internal, std::left, std::right

int main () {
  int n = -77;
  std::cout.width(6); std::cout << std::internal << n << '\n';
  std::cout.width(6); std::cout << std::left << n << '\n';
  std::cout.width(6); std::cout << std::right << n << '\n';
  return 0;
}

Output:
-   77
-77
   -77


Data races

Modifies str. Concurrent access to the same stream object may cause data races.

Exception safety

Basic guarantee: if an exception is thrown, str is in a valid state.

See also