---
name: "std::strstream"
section: "3"
platform: "linux"
package: "libstdc++5-3.3-doc"
version: "1:3.3.6-15"
release: "Debian 4.0 (Etch)"
platforms: ["linux"]
url: "https://new.carta.tech/std::strstream"
---

# std::strstream(3)

## NAME

std::strstream -

## SYNOPSIS

Inherits **std::basic\_iostream\< char \>**.

### Public Types

typedef char **char\_type**\
 typedef **char\_traits**\< char \>::**int\_type** **int\_type**\
 typedef **char\_traits**\< char \>::**pos\_type** **pos\_type**\
 typedef **char\_traits**\< char \>::**off\_type** **off\_type**\
 typedef **basic\_istream**\< char, Traits \> **\_\_istream\_type**\
 typedef **basic\_ostream**\< char, Traits \> **\_\_ostream\_type**\
 typedef Traits **traits\_type**\
 typedef Traits **traits\_type**\
 typedef **basic\_streambuf**\< char, Traits \> **streambuf\_type**\
 typedef **basic\_streambuf**\< char, Traits \> **streambuf\_type**\
 typedef **basic\_ios**\< char, Traits \> **\_\_ios\_type**\
 typedef **basic\_ios**\< char, Traits \> **\_\_ios\_type**\
 typedef **istreambuf\_iterator**\< char, Traits \> **\_\_istreambuf\_iter**\
 typedef **num\_get**\< char, **\_\_istreambuf\_iter** \> **numget\_type**\
 typedef **ctype**\< char \> **ctype\_type**\
 typedef **ctype**\< char \> **ctype\_type**\
 typedef **ostreambuf\_iterator**\< char, Traits \> **\_\_ostreambuf\_iter**\
 typedef **ostreambuf\_iterator**\< char, Traits \> **\_\_ostreambuf\_iter**\
 typedef **num\_put**\< char, **\_\_ostreambuf\_iter** \> **numput\_type**\
 typedef **num\_put**\< char, **\_\_ostreambuf\_iter** \> **numput\_type**\
 enum **event** \
 typedef **IosFmtflags** **fmtflags**\
 *This is a bitmask type.*  typedef **IosIostate** **iostate**\
 *This is a bitmask type.*  typedef **IosOpenmode** **openmode**\
 *This is a bitmask type.*  typedef **IosSeekdir** **seekdir**\
 *This is an enumerated type.*  typedef void(\*) **event\_callback** (**event**, **ios\_base** &, int)\

### Public Member Functions

**strstream** ()\
 **strstream** (char \*, int, **ios\_base::openmode**=**ios\_base::in**\|**ios\_base::out**)\
 virtual **~strstream** ()\
 **strstreambuf** \* **rdbuf** () const\
 *Accessing the underlying buffer.*  void **freeze** (bool=true)\
 int **pcount** () const\
 char \* **str** ()\
 **\_\_istream\_type** & **operator\>\>** (**\_\_istream\_type** &(\*\_\_pf)(**\_\_istream\_type** &))\
 *Interface for manipulators.*  **\_\_istream\_type** & **operator\>\>** (bool &n)\
 *Basic arithmetic extractors.*  **\_\_istream\_type** & **operator\>\>** (**streambuf\_type** \*sb)\
 *Extracting into another streambuf.*  **streamsize** **gcount** () const\
 *Character counting.*  **int\_type** **get** ()\
 *Simple extraction.*  **\_\_istream\_type** & **get** (**char\_type** &c)\
 *Simple extraction.*  **\_\_istream\_type** & **get** (**char\_type** \*s, **streamsize** n, **char\_type** \_\_delim)\
 *Simple multiple-character extraction.*  **\_\_istream\_type** & **get** (**char\_type** \*s, **streamsize** n)\
 *Simple multiple-character extraction.*  **\_\_istream\_type** & **get** (**streambuf\_type** &sb, **char\_type** \_\_delim)\
 *Extraction into another streambuf.*  **\_\_istream\_type** & **get** (**streambuf\_type** &sb)\
 *Extraction into another streambuf.*  **\_\_istream\_type** & **getline** (**char\_type** \*s, **streamsize** n, **char\_type** \_\_delim)\
 *String extraction.*  **\_\_istream\_type** & **getline** (**char\_type** \*s, **streamsize** n)\
 *String extraction.*  **\_\_istream\_type** & **ignore** (**streamsize** n=1, **int\_type** \_\_delim=traits\_type::eof())\
 *Discarding characters.*  **int\_type** **peek** ()\
 *Looking ahead in the stream.*  **\_\_istream\_type** & **read** (**char\_type** \*s, **streamsize** n)\
 *Extraction without delimiters.*  **streamsize** **readsome** (**char\_type** \*s, **streamsize** n)\
 *Extraction until the buffer is exhausted, but no more.*  **\_\_istream\_type** & **putback** (**char\_type** c)\
 *Unextracting a single character.*  **\_\_istream\_type** & **unget** ()\
 *Unextracting the previous character.*  int **sync** ()\
 *Synchronizing the stream buffer.*  **pos\_type** **tellg** ()\
 *Getting the current read position.*  **\_\_istream\_type** & **seekg** (**pos\_type**)\
 *Changing the current read position.*  **\_\_istream\_type** & **seekg** (**off\_type**, **ios\_base::seekdir**)\
 *Changing the current read position.*  **operator void \*** () const\
 *The quick-and-easy status check.*  bool **operator!** () const\
 **iostate** **rdstate** () const\
 *Returns the error state of the stream buffer.*  void **clear** (**iostate** state=**goodbit**)\
 *\[Re\]sets the error state.*  void **setstate** (**iostate** state)\
 *Sets additional flags in the error state.*  void **M\_setstate** (**iostate** state)\
 bool **good** () const\
 *Fast error checking.*  bool **eof** () const\
 *Fast error checking.*  bool **fail** () const\
 *Fast error checking.*  bool **bad** () const\
 *Fast error checking.*  **iostate** **exceptions** () const\
 *Throwing exceptions on errors.*  void **exceptions** (**iostate** \_\_except)\
 *Throwing exceptions on errors.*  **basic\_ostream**\< char, Traits \> \* **tie** () const\
 *Fetches the current tied stream.*  **basic\_ostream**\< char, Traits \> \* **tie** (**basic\_ostream**\< char, Traits \> \*\_\_tiestr)\
 *Ties this stream to an output stream.*  **basic\_streambuf**\< char, Traits \> \* **rdbuf** (**basic\_streambuf**\< char, Traits \> \*sb)\
 *Changing the underlying buffer.*  **basic\_ios** & **copyfmt** (const **basic\_ios** &\_\_rhs)\
 **char\_type** **fill** () const\
 *Retreives the 'empty' character.*  **char\_type** **fill** (**char\_type** ch)\
 *Sets a new 'empty' character.*  **locale** **imbue** (const **locale** &\_\_loc)\
 *Moves to a new locale.*  char **narrow** (**char\_type** c, char \_\_dfault) const\
 *Squeezes characters.*  **char\_type** **widen** (char c) const\
 *Widens characters.*  void **register\_callback** (**event\_callback** \_\_fn, int index)\
 **fmtflags** **flags** () const\
 *Access to format flags.*  **fmtflags** **flags** (**fmtflags** \_\_fmtfl)\
 *Setting new format flags all at once.*  **fmtflags** **setf** (**fmtflags** \_\_fmtfl)\
 *Setting new format flags.*  **fmtflags** **setf** (**fmtflags** \_\_fmtfl, **fmtflags** \_\_mask)\
 *Setting new format flags.*  void **unsetf** (**fmtflags** \_\_mask)\
 *Clearing format flags.*  **streamsize** **precision** () const\
 *Flags access.*  **streamsize** **precision** (**streamsize** \_\_prec)\
 *Changing flags.*  **streamsize** **width** () const\
 *Flags access.*  **streamsize** **width** (**streamsize** \_\_wide)\
 *Changing flags.*  **locale** **getloc** () const\
 *Locale access.*  const **locale** & **M\_getloc** () const\
 *Locale access.*  long & **iword** (int \_\_ix)\
 void \*& **pword** (int \_\_ix)\
 **\_\_ostream\_type** & **operator\<\<** (**\_\_ostream\_type** &(\*\_\_pf)(**\_\_ostream\_type** &))\
 *Interface for manipulators.*  **\_\_ostream\_type** & **operator\<\<** (long n)\
 *Basic arithmetic inserters.*  **\_\_ostream\_type** & **operator\<\<** (short n)\
 **\_\_ostream\_type** & **operator\<\<** (unsigned short n)\
 **\_\_ostream\_type** & **operator\<\<** (int n)\
 **\_\_ostream\_type** & **operator\<\<** (unsigned int n)\
 **\_\_ostream\_type** & **operator\<\<** (float \_\_f)\
 **\_\_ostream\_type** & **operator\<\<** (**streambuf\_type** \*sb)\
 *Extracting from another streambuf.*  **\_\_ostream\_type** & **put** (**char\_type** c)\
 *Simple insertion.*  **\_\_ostream\_type** & **write** (const **char\_type** \*s, **streamsize** n)\
 *Character string insertion.*  **\_\_ostream\_type** & **flush** ()\
 *Synchronizing the stream buffer.*  **pos\_type** **tellp** ()\
 *Getting the current write position.*  **\_\_ostream\_type** & **seekp** (**pos\_type**)\
 *Changing the current write position.*  **\_\_ostream\_type** & **seekp** (**off\_type**, **ios\_base::seekdir**)\
 *Changing the current write position.*

### Static Public Member Functions

static bool **sync\_with\_stdio** (bool sync=true)\
 *Interaction with the standard C I/O objects.*  static int **xalloc** ()  throw ()\

### Static Public Attributes

static const **fmtflags** **boolalpha**\
 *Insert/extract* `bool` *in alphabetic rather than numeric format.*  static const **fmtflags** **dec**\
 *Converts integer input or generates integer output in decimal base.*  static const **fmtflags** **fixed**\
 *Generate floating-point output in fixed-point notation.*  static const **fmtflags** **hex**\
 *Converts integer input or generates integer output in hexadecimal base.*  static const **fmtflags** **internal**\
 *designated.*  static const **fmtflags** **left**\
 *generated output. (I.e., the thing you print is flush left.)*  static const **fmtflags** **oct**\
 *Converts integer input or generates integer output in octal base.*  static const **fmtflags** **right**\
 *generated output. (I.e., the thing you print is flush right.)*  static const **fmtflags** **scientific**\
 *Generates floating-point output in scientific notation.*  static const **fmtflags** **showbase**\
 *output.*  static const **fmtflags** **showpoint**\
 *floating-point output.*  static const **fmtflags** **showpos**\
 *Generates a + sign in non-negative generated numeric output.*  static const **fmtflags** **skipws**\
 *Skips leading white space before certain input operations.*  static const **fmtflags** **unitbuf**\
 *Flushes output after each output operation.*  static const **fmtflags** **uppercase**\
 *in generated output.*  static const **fmtflags** **adjustfield**\
 *A mask of left\|right\|internal. Useful for the 2-arg form of* `setf`*.*  static const **fmtflags** **basefield**\
 *A mask of dec\|oct\|hex. Useful for the 2-arg form of* `setf`*.*  static const **fmtflags** **floatfield**\
 *A mask of scientific\|fixed. Useful for the 2-arg form of* `setf`*.*  static const **iostate** **badbit**\
 *as an irrecoverable read error from a file).*  static const **iostate** **eofbit**\
 *Indicates that an input operation reached the end of an input sequence.*  static const **iostate** **failbit**\
 *desired characters.*  static const **iostate** **goodbit**\
 *Indicates all is well.*  static const **openmode** **app**\
 *Seek to end before each write.*  static const **openmode** **ate**\
 *Open and seek to end immediately after opening.*  static const **openmode** **binary**\
 *http://gcc.gnu.org/onlinedocs/libstdc++/27\_io/howto.html#7 for more.*  static const **openmode** **in**\
 *Open for input. Default for* `ifstream` *and fstream.*  static const **openmode** **out**\
 *Open for output. Default for* `ofstream` *and fstream.*  static const **openmode** **trunc**\
 *Open for input. Default for* `ofstream`*.*  static const **seekdir** **beg**\
 *Request a seek relative to the beginning of the stream.*  static const **seekdir** **cur**\
 *Request a seek relative to the current position within the sequence.*  static const **seekdir** **end**\
 *Request a seek relative to the current end of the sequence.*

### Protected Member Functions

void **init** (**basic\_streambuf**\< char, Traits \> \*sb)\
 *All setup is performed here.*  bool **M\_check\_facet** (const **locale::facet** \*\_\_f) const\
 void **M\_call\_callbacks** (**event** \_\_ev)  throw ()\
 void **M\_dispose\_callbacks** (void)\
 Words & **M\_grow\_words** (int index)\
 void **M\_init** ()\

### Protected Attributes

**streamsize** **M\_gcount**\
 **basic\_ostream**\< char, Traits \> \* **M\_tie**\
 **char\_type** **M\_fill**\
 bool **M\_fill\_init**\
 **basic\_streambuf**\< char, Traits \> \* **M\_streambuf**\
 const **ctype\_type** \* **M\_fctype**\
 const **numput\_type** \* **M\_fnumput**\
 const **numget\_type** \* **M\_fnumget**\
 Callback\_list \* **M\_callbacks**\
 Words **M\_word\_zero**\
 Words **M\_local\_word** \[**S\_local\_word\_size**\]\
 int **M\_word\_size**\
 Words \* **M\_word**\
 **locale** **M\_ios\_locale**\

**streamsize** **M\_precision**\
 **streamsize** **M\_width**\
 **fmtflags** **M\_flags**\
 **iostate** **M\_exception**\
 **iostate** **M\_streambuf\_state**\

### Static Protected Attributes

static const int **S\_local\_word\_size**\

### Private Attributes

**strstreambuf** **M\_buf**\

### Friends

class **sentry**\
 class **sentry**\

## Detailed Description

Definition at line 153 of file strstream.

## Member Typedef Documentation

### typedef char std::strstream::char\_type

These are standard types. They permit a standardized way of referring to names of (or names dependant on) the template parameters, which are specific to the implementation.

Reimplemented from **std::basic\_istream\< char, Traits \>**.

Definition at line 156 of file strstream.

### typedef IosFmtflags std::ios\_base::fmtflags` [inherited]`

This is a bitmask type.

`'IosFmtflags'` is implementation-defined, but it is valid to perform bitwise operations on these values and expect the Right Thing to happen. Defined objects of type fmtflags are:

- •

  boolalpha

- •

  dec

- •

  fixed

- •

  hex

- •

  internal

- •

  left

- •

  oct

- •

  right

- •

  scientific

- •

  showbase

- •

  showpoint

- •

  showpos

- •

  skipws

- •

  unitbuf

- •

  uppercase

- •

  adjustfield

- •

  basefield

- •

  floatfield

Definition at line 212 of file ios\_base.h.

### typedef IosIostate std::ios\_base::iostate` [inherited]`

This is a bitmask type.

`'IosIostate'` is implementation-defined, but it is valid to perform bitwise operations on these values and expect the Right Thing to happen. Defined objects of type iostate are:

- •

  badbit

- •

  eofbit

- •

  failbit

- •

  goodbit

Definition at line 269 of file ios\_base.h.

### typedef IosOpenmode std::ios\_base::openmode` [inherited]`

This is a bitmask type.

`'IosOpenmode'` is implementation-defined, but it is valid to perform bitwise operations on these values and expect the Right Thing to happen. Defined objects of type openmode are:

- •

  app

- •

  ate

- •

  binary

- •

  in

- •

  out

- •

  trunc

Definition at line 296 of file ios\_base.h.

### typedef IosSeekdir std::ios\_base::seekdir` [inherited]`

This is an enumerated type.

`'IosSeekdir'` is implementation-defined. Defined values of type seekdir are:

- •

  beg

- •

  cur, equivalent to `SEEKCUR` in the C standard library.

- •

  end, equivalent to `SEEKEND` in the C standard library.

Definition at line 323 of file ios\_base.h.

### typedef void(\*) std::ios\_base::event\_callback(event, ios\_base &, int)` [inherited]`

**Todo**

Doc me! See docs/doxygen/TODO and http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.

Definition at line 355 of file ios\_base.h.

## Member Enumeration Documentation

### enum std::ios\_base::event` [inherited]`

**Todo**

Doc me! See docs/doxygen/TODO and http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.

Definition at line 345 of file ios\_base.h.

## Member Function Documentation

### strstreambuf \* std::strstream::rdbuf () const

Accessing the underlying buffer.

**Returns:**

The current stream buffer.

This does not change the state of the stream.

Reimplemented from **std::basic\_ios\< char, Traits \>**.

Definition at line 402 of file strstream.cc.

### \_\_istream\_type& std::basic\_istream\< char , Traits \>::operator\>\> (\_\_istream\_type &(\*)(\_\_istream\_type &) \_\_pf)` [inherited]`

Interface for manipulators.

Manuipulators such as `std::ws` and **std::dec use these functions in constructs like 'std::cin \>\> std::ws'. For more information, see the iomanip header.**

### \_\_istream\_type& std::basic\_istream\< char , Traits \>::operator\>\> (bool & n)` [inherited]`

**Basic arithmetic extractors.**

**Parameters:**

*A* **variable of builtin type.**

**Returns:**

`*this` **if successful**

**These functions use the stream's current locale (specifically, the num\_get facet) to parse the input data.**

### \_\_istream\_type& std::basic\_istream\< char , Traits \>::operator\>\> (streambuf\_type \* sb)` [inherited]`

**Extracting into another streambuf.**

**Parameters:**

*sb* **A pointer to a streambuf**

**This function behaves like one of the basic arithmetic extractors, in that it also constructs a sentry onject and has the same error handling behavior.**

**If** *sb* **is NULL, the stream will set failbit in its error state.**

**Characters are extracted from this stream and inserted into the** *sb* **streambuf until one of the following occurs:**

- •

  **the input stream reaches end-of-file,**

- •

  **insertion into the output buffer fails (in this case, the character that would have been inserted is not extracted), or**

- •

  **an exception occurs (and in this case is caught)**

**If the function inserts no characters, failbit is set.**

### streamsize std::basic\_istream\< char , Traits \>::gcount () const` [inline, inherited]`

**Character counting.**

**Returns:**

**The number of characters extracted by the previous unformatted input function dispatched for this stream.**

**Definition at line 243 of file istream.**

### int\_type std::basic\_istream\< char , Traits \>::get (void)` [inherited]`

**Simple extraction.**

**Returns:**

**A character, or eof().**

**Tries to extract a character. If none are available, sets failbit and returns traits::eof().**

### \_\_istream\_type& std::basic\_istream\< char , Traits \>::get (char\_type & c)` [inherited]`

**Simple extraction.**

**Parameters:**

*c* **The character in which to store data.**

**Returns:**

**\*this**

**Tries to extract a character and store it in** *c***. If none are available, sets failbit and returns traits::eof().**

**Note:**

**This function is not overloaded on signed char and unsigned char.**

### \_\_istream\_type& std::basic\_istream\< char , Traits \>::get (char\_type \* s, streamsize n, char\_type \_\_delim)` [inherited]`

**Simple multiple-character extraction.**

**Parameters:**

*s* **Pointer to an array.** \
 *n* **Maximum number of characters to store in** *s***.** \
 *delim* **A 'stop' character.**

**Returns:**

**\*this**

**Characters are extracted and stored into** *s* **until one of the following happens:**

- •

  `n-1` **characters are stored**

- •

  **the input sequence reaches EOF**

- •

  **the next character equals** *delim***, in which case the character is not extracted**

**If no characters are stored, failbit is set in the stream's error state.**

**In any case, a null character is stored into the next location in the array.**

**Note:**

**This function is not overloaded on signed char and unsigned char.**

### \_\_istream\_type& std::basic\_istream\< char , Traits \>::get (char\_type \* s, streamsize n)` [inline, inherited]`

**Simple multiple-character extraction.**

**Parameters:**

*s* **Pointer to an array.** \
 *n* **Maximum number of characters to store in** *s***.**

**Returns:**

**\*this**

**Returns** `get`**(s,n,widen('**\

**Definition at line 327 of file istream.**

### \_\_istream\_type& std::basic\_istream\< char , Traits \>::get (streambuf\_type & sb, char\_type \_\_delim)` [inherited]`

**Extraction into another streambuf.**

**Parameters:**

*sb* **A streambuf in which to store data.** \
 *delim* **A 'stop' character.**

**Returns:**

**\*this**

**Characters are extracted and inserted into** *sb* **until one of the following happens:**

- •

  **the input sequence reaches EOF**

- •

  **insertion into the output buffer fails (in this case, the character that would have been inserted is not extracted)**

- •

  **the next character equals** *delim* **(in this case, the character is not extracted)**

- •

  **an exception occurs (and in this case is caught)**

**If no characters are stored, failbit is set in the stream's error state.**

### \_\_istream\_type& std::basic\_istream\< char , Traits \>::get (streambuf\_type & sb)` [inline, inherited]`

**Extraction into another streambuf.**

**Parameters:**

*sb* **A streambuf in which to store data.**

**Returns:**

**\*this**

**Returns** `get`**(sb,widen('**\

**Definition at line 360 of file istream.**

### \_\_istream\_type& std::basic\_istream\< char , Traits \>::getline (char\_type \* s, streamsize n, char\_type \_\_delim)` [inherited]`

**String extraction.**

**Parameters:**

*s* **A character array in which to store the data.** \
 *n* **Maximum number of characters to extract.** \
 *delim* **A 'stop' character.**

**Returns:**

**\*this**

**Extracts and stores characters into** *s* **until one of the following happens. Note that these criteria are required to be tested in the order listed here, to allow an input line to exactly fill the** *s* **array without setting failbit.**

- 1\.

  **the input sequence reaches end-of-file, in which case eofbit is set in the stream error state**

- 2\.

  **the next character equals** `delim`**, in which case the character is extracted (and therefore counted in gcount()) but not stored**

- 3\.

  `n-1` **characters are stored, in which case failbit is set in the stream error state**

**If no characters are extracted, failbit is set. (An empty line of input should therefore not cause failbit to be set.)**

**In any case, a null character is stored in the next location in the array.**

### \_\_istream\_type& std::basic\_istream\< char , Traits \>::getline (char\_type \* s, streamsize n)` [inline, inherited]`

**String extraction.**

**Parameters:**

*s* **A character array in which to store the data.** \
 *n* **Maximum number of characters to extract.**

**Returns:**

**\*this**

**Returns** `getline`**(s,n,widen('**\

**Definition at line 400 of file istream.**

### \_\_istream\_type& std::basic\_istream\< char , Traits \>::ignore (streamsize n = `1`, int\_type \_\_delim = `traits_type::eof()`)` [inherited]`

**Discarding characters.**

**Parameters:**

*n* **Number of characters to discard.** \
 *delim* **A 'stop' character.**

**Returns:**

**\*this**

**Extracts characters and throws them away until one of the following happens:**

- •

  **if** *n* `!=` **std::numeric\_limits\<int\>::max(),** *n* **characters are extracted**

- •

  **the input sequence reaches end-of-file**

- •

  **the next character equals** *delim* **(in this case, the character is extracted); note that this condition will never occur if** *delim* **equals** `traits::eof()`**.**

### int\_type std::basic\_istream\< char , Traits \>::peek (void)` [inherited]`

**Looking ahead in the stream.**

**Returns:**

**The next character, or eof().**

**If, after constructing the sentry object, good() is false, returns** `traits::eof()`**. Otherwise reads but does not extract the next input character.**

### \_\_istream\_type& std::basic\_istream\< char , Traits \>::read (char\_type \* s, streamsize n)` [inherited]`

**Extraction without delimiters.**

**Parameters:**

*s* **A character array.** \
 *n* **Maximum number of characters to store.**

**Returns:**

**\*this**

**If the stream state is good(), extracts characters and stores them into** *s* **until one of the following happens:**

- •

  *n* **characters are stored**

- •

  **the input sequence reaches end-of-file, in which case the error state is set to** `failbit|eofbit`**.**

**Note:**

**This function is not overloaded on signed char and unsigned char.**

### streamsize std::basic\_istream\< char , Traits \>::readsome (char\_type \* s, streamsize n)` [inherited]`

**Extraction until the buffer is exhausted, but no more.**

**Parameters:**

*s* **A character array.** \
 *n* **Maximum number of characters to store.**

**Returns:**

**The number of characters extracted.**

**Extracts characters and stores them into** *s* **depending on the number of characters remaining in the streambuf's buffer, rdbuf()**`->in_avail()`**, called** `A` **here:**

- •

  **if** `A` `==` `-1`**, sets eofbit and extracts no characters**

- •

  **if** `A` `==` `0`**, extracts no characters**

- •

  **if** `A` `>` `0`**, extracts** `min(A,n)`

**The goal is to empty the current buffer, and to not request any more from the external input sequence controlled by the streambuf.**

### \_\_istream\_type& std::basic\_istream\< char , Traits \>::putback (char\_type c)` [inherited]`

**Unextracting a single character.**

**Parameters:**

*c* **The character to push back into the input stream.**

**Returns:**

**\*this**

**If rdbuf() is not null, calls rdbuf()**`->sputbackc(c)`**.**

**If rdbuf() is null or if** `sputbackc()` **fails, sets badbit in the error state.**

**Note:**

**Since no characters are extracted, the next call to gcount() will return 0, as required by DR 60.**

### \_\_istream\_type& std::basic\_istream\< char , Traits \>::unget (void)` [inherited]`

**Unextracting the previous character.**

**Returns:**

**\*this**

**If rdbuf() is not null, calls rdbuf()**`->sungetc(c)`**.**

**If rdbuf() is null or if** `sungetc()` **fails, sets badbit in the error state.**

**Note:**

**Since no characters are extracted, the next call to gcount() will return 0, as required by DR 60.**

### int std::basic\_istream\< char , Traits \>::sync (void)` [inherited]`

**Synchronizing the stream buffer.**

**Returns:**

**0 on success, -1 on failure**

**If rdbuf() is a null pointer, returns -1.**

**Otherwise, calls rdbuf()**`->pubsync()`**, and if that returns -1, sets badbit and returns -1.**

**Otherwise, returns 0.**

**Note:**

**This function does not count the number of characters extracted, if any, and therefore does not affect the next call to gcount().**

### pos\_type std::basic\_istream\< char , Traits \>::tellg (void)` [inherited]`

**Getting the current read position.**

**Returns:**

**A file position object.**

**If fail() is not false, returns** `pos_type`**(-1) to indicate failure. Otherwise returns rdbuf()**`->pubseekoff(0,cur,in)`**.**

**Note:**

**This function does not count the number of characters extracted, if any, and therefore does not affect the next call to gcount().**

### \_\_istream\_type& std::basic\_istream\< char , Traits \>::seekg (pos\_type)` [inherited]`

**Changing the current read position.**

**Parameters:**

*pos* **A file position object.**

**Returns:**

**\*this**

**If fail() is not true, calls rdbuf()**`->pubseekpos(pos)`**. If that function fails, sets failbit.**

**Note:**

**This function does not count the number of characters extracted, if any, and therefore does not affect the next call to gcount().**

### \_\_istream\_type& std::basic\_istream\< char , Traits \>::seekg (off\_type, ios\_base::seekdir)` [inherited]`

**Changing the current read position.**

**Parameters:**

*off* **A file offset object.** \
 *dir* **The direction in which to seek.**

**Returns:**

**\*this**

**If fail() is not true, calls rdbuf()**`->pubseekoff(off,dir)`**. If that function fails, sets failbit.**

**Note:**

**This function does not count the number of characters extracted, if any, and therefore does not affect the next call to gcount().**

### std::basic\_ios\< char , Traits \>::operator void \* () const` [inline, inherited]`

**The quick-and-easy status check.**

**This allows you to write constructs such as 'if (!a\_stream) ...' and 'while (a\_stream) ...'**

**Definition at line 109 of file basic\_ios.h.**

**References std::basic\_ios\< CharT, Traits \>::fail().**

### iostate std::basic\_ios\< char , Traits \>::rdstate () const` [inline, inherited]`

**Returns the error state of the stream buffer.**

**Returns:**

**A bit pattern (well, isn't everything?)**

**See std::ios\_base::iostate for the possible bit values. Most users will call one of the interpreting wrappers, e.g., good().**

**Definition at line 125 of file basic\_ios.h.**

### void std::basic\_ios\< char , Traits \>::clear (iostate state = goodbit)` [inherited]`

**\[Re\]sets the error state.**

**Parameters:**

*state* **The new state flag(s) to set.**

**See std::ios\_base::iostate for the possible bit values. Most users will not need to pass an argument.**

### void std::basic\_ios\< char , Traits \>::setstate (iostate state)` [inline, inherited]`

**Sets additional flags in the error state.**

**Parameters:**

*state* **The additional state flag(s) to set.**

**See std::ios\_base::iostate for the possible bit values.**

**Definition at line 145 of file basic\_ios.h.**

**References std::basic\_ios\< CharT, Traits \>::clear().**

### bool std::basic\_ios\< char , Traits \>::good () const` [inline, inherited]`

**Fast error checking.**

**Returns:**

**True if no error flags are set.**

**A wrapper around rdstate.**

**Definition at line 168 of file basic\_ios.h.**

**References std::basic\_ios\< CharT, Traits \>::rdstate().**

### bool std::basic\_ios\< char , Traits \>::eof () const` [inline, inherited]`

**Fast error checking.**

**Returns:**

**True if the eofbit is set.**

**Note that other iostate flags may also be set.**

**Definition at line 178 of file basic\_ios.h.**

**References std::ios\_base::eofbit.**

### bool std::basic\_ios\< char , Traits \>::fail () const` [inline, inherited]`

**Fast error checking.**

**Returns:**

**True if either the badbit or the failbit is set.**

**Checking the badbit in fail() is historical practice. Note that other iostate flags may also be set.**

**Definition at line 189 of file basic\_ios.h.**

**References std::ios\_base::badbit, and std::ios\_base::failbit.**

### bool std::basic\_ios\< char , Traits \>::bad () const` [inline, inherited]`

**Fast error checking.**

**Returns:**

**True if the badbit is set.**

**Note that other iostate flags may also be set.**

**Definition at line 199 of file basic\_ios.h.**

**References std::ios\_base::badbit.**

### iostate std::basic\_ios\< char , Traits \>::exceptions () const` [inline, inherited]`

**Throwing exceptions on errors.**

**Returns:**

**The current exceptions mask.**

**This changes nothing in the stream. See the one-argument version of exceptions(iostate) for the meaning of the return value.**

**Definition at line 210 of file basic\_ios.h.**

### void std::basic\_ios\< char , Traits \>::exceptions (iostate \_\_except)` [inline, inherited]`

**Throwing exceptions on errors.**

**Parameters:**

*except* **The new exceptions mask.**

**By default, error flags are set silently. You can set an exceptions mask for each stream; if a bit in the mask becomes set in the error flags, then an exception of type std::ios\_base::failure is thrown.**

**If the error flage is already set when the exceptions mask is added, the exception is immediately thrown. Try running the following under GCC 3.1 or later:**

```
  #include <iostream>
  #include <fstream>
  #include <exception>
  int main()
  {
      std::set_terminate (__gnu_cxx::__verbose_terminate_handler);
      std::ifstream f ('/etc/motd');
      std::cerr << 'Setting badbit0;
      f.setstate (std::ios_base::badbit);
      std::cerr << 'Setting exception mask0;
      f.exceptions (std::ios_base::badbit);
  }
```

**Definition at line 245 of file basic\_ios.h.**

**References std::basic\_ios\< CharT, Traits \>::clear().**

### basic\_ostream\<char , Traits \>\* std::basic\_ios\< char , Traits \>::tie () const` [inline, inherited]`

**Fetches the current** *tied* **stream.**

**Returns:**

**A pointer to the tied stream, or NULL if the stream is not tied.**

**A stream may be** *tied* **(or synchronized) to a second output stream. When this stream performs any I/O, the tied stream is first flushed. For example, std::cin is tied to std::cout.**

**Definition at line 282 of file basic\_ios.h.**

### basic\_ostream\<char , Traits \>\* std::basic\_ios\< char , Traits \>::tie (basic\_ostream\< char , Traits \> \* \_\_tiestr)` [inline, inherited]`

**Ties this stream to an output stream.**

**Parameters:**

*tiestr* **The output stream.**

**Returns:**

**The previously tied output stream, or NULL if the stream was not tied.**

**This sets up a new tie; see tie() for more.**

**Definition at line 294 of file basic\_ios.h.**

### basic\_streambuf\<char , Traits \>\* std::basic\_ios\< char , Traits \>::rdbuf (basic\_streambuf\< char , Traits \> \* sb)` [inherited]`

**Changing the underlying buffer.**

**Parameters:**

*sb* **The new stream buffer.**

**Returns:**

**The previous stream buffer.**

**Associates a new buffer with the current stream, and clears the error state.**

**Due to historical accidents which the LWG refuses to correct, the I/O library suffers from a design error: this function is hidden in derived classes by overrides of the zero-argument rdbuf(), which is non-virtual for hysterical raisins. As a result, you must use explicit qualifications to access this function via any derived class.**

### basic\_ios& std::basic\_ios\< char , Traits \>::copyfmt (const basic\_ios\< char, Traits \> & \_\_rhs)` [inherited]`

**Todo**

**Doc me! See docs/doxygen/TODO and http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.**

### char\_type std::basic\_ios\< char , Traits \>::fill () const` [inline, inherited]`

**Retreives the 'empty' character.**

**Returns:**

**The current fill character.**

**It defaults to a space (' ') in the current locale.**

**Definition at line 342 of file basic\_ios.h.**

**References std::basic\_ios\< CharT, Traits \>::widen().**

### char\_type std::basic\_ios\< char , Traits \>::fill (char\_type ch)` [inline, inherited]`

**Sets a new 'empty' character.**

**Parameters:**

*ch* **The new character.**

**Returns:**

**The previous fill character.**

**The fill character is used to fill out space when P+ characters have been requested (e.g., via setw), Q characters are actually used, and Q\<P. It defaults to a space (' ') in the current locale.**

**Definition at line 362 of file basic\_ios.h.**

**References std::basic\_ios\< CharT, Traits \>::fill().**

### locale std::basic\_ios\< char , Traits \>::imbue (const locale & \_\_loc)` [inherited]`

**Moves to a new locale.**

**Parameters:**

*loc* **The new locale.**

**Returns:**

**The previous locale.**

**Calls** `ios_base::imbue(loc)`**, and if a stream buffer is associated with this stream, calls that buffer's** `pubimbue(loc)`**.**

**Additional l10n notes are at http://gcc.gnu.org/onlinedocs/libstdc++/22\_locale/howto.html**

**Reimplemented from std::ios\_base.**

### char std::basic\_ios\< char , Traits \>::narrow (char\_type c, char \_\_dfault) const` [inherited]`

**Squeezes characters.**

**Parameters:**

*c* **The character to narrow.** \
 *dfault* **The character to narrow.**

**Returns:**

**The narrowed character.**

**Maps a character of** `char_type` **to a character of** `char`**, if possible.**

**Returns the result of**

```
    std::use_facet< ctype<char_type> >(getloc()).narrow(c,dfault)
```

**Additional l10n notes are at http://gcc.gnu.org/onlinedocs/libstdc++/22\_locale/howto.html**

### char\_type std::basic\_ios\< char , Traits \>::widen (char c) const` [inherited]`

**Widens characters.**

**Parameters:**

*c* **The character to widen.**

**Returns:**

**The widened character.**

**Maps a character of** `char` **to a character of** `char_type`**.**

**Returns the result of**

```
    std::use_facet< ctype<char_type> >(getloc()).widen(c)
```

**Additional l10n notes are at http://gcc.gnu.org/onlinedocs/libstdc++/22\_locale/howto.html**

### void std::basic\_ios\< char , Traits \>::init (basic\_streambuf\< char , Traits \> \* sb)` [protected, inherited]`

**All setup is performed here.**

**This is called from the public constructor. It is not virtual and cannot be redefined. The second argument, cache, is used to initialize the standard streams without allocating memory.**

### void std::ios\_base::register\_callback (event\_callback \_\_fn, int index)` [inherited]`

**Todo**

**Doc me! See docs/doxygen/TODO and http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.**

**Definition at line 333 of file ios.cc.**

### fmtflags std::ios\_base::flags () const` [inline, inherited]`

**Access to format flags.**

**Returns:**

**The format control flags for both input and output.**

**Definition at line 472 of file ios\_base.h.**

**Referenced by std::basic\_ios\< CharT, Traits \>::copyfmt(), std::money\_get\< CharT, InIter \>::do\_get(), std::num\_get\< CharT, InIter \>::do\_get(), std::money\_put\< CharT, OutIter \>::do\_put(), std::num\_put\< CharT, OutIter \>::do\_put(), std::num\_put\< CharT, OutIter \>::M\_convert\_float(), std::num\_put\< CharT, OutIter \>::M\_convert\_int(), std::num\_get\< CharT, InIter \>::M\_extract\_int(), std::num\_put\< CharT, OutIter \>::M\_group\_int(), std::num\_put\< CharT, OutIter \>::M\_widen\_int(), \_\_gnu\_cxx::operator\<\<(), std::basic\_ostream\< CharT, Traits \>::operator\<\<(), std::basic\_ostream\< char \>::operator\<\<(), std::operator\<\<(), std::num\_base::S\_format\_float(), std::num\_base::S\_format\_int(), std::\_\_pad\< CharT, Traits \>::S\_pad(), and std::basic\_istream\< CharT, Traits \>::sentry::sentry().**

### fmtflags std::ios\_base::flags (fmtflags \_\_fmtfl)` [inline, inherited]`

**Setting new format flags all at once.**

**Parameters:**

*fmtfl* **The new flags to set.**

**Returns:**

**The previous format control flags.**

**This function overwrites all the format flags with** *fmtfl***.**

**Definition at line 482 of file ios\_base.h.**

### fmtflags std::ios\_base::setf (fmtflags \_\_fmtfl)` [inline, inherited]`

**Setting new format flags.**

**Parameters:**

*fmtfl* **Additional flags to set.**

**Returns:**

**The previous format control flags.**

**This function sets additional flags in format control. Flags that were previously set remain set.**

**Definition at line 498 of file ios\_base.h.**

**Referenced by std::boolalpha(), std::dec(), std::fixed(), std::hex(), std::internal(), std::left(), std::oct(), std::operator\<\<(), std::operator\>\>(), std::right(), std::scientific(), std::showbase(), std::showpoint(), std::showpos(), std::skipws(), std::unitbuf(), and std::uppercase().**

### fmtflags std::ios\_base::setf (fmtflags \_\_fmtfl, fmtflags \_\_mask)` [inline, inherited]`

**Setting new format flags.**

**Parameters:**

*fmtfl* **Additional flags to set.** \
 *mask* **The flags mask for** *fmtfl***.**

**Returns:**

**The previous format control flags.**

**This function clears** *mask* **in the format flags, then sets** *fmtfl* `&` *mask***. An example mask is ios\_base::adjustfield.**

**Definition at line 515 of file ios\_base.h.**

### void std::ios\_base::unsetf (fmtflags \_\_mask)` [inline, inherited]`

**Clearing format flags.**

**Parameters:**

*mask* **The flags to unset.**

**This function clears** *mask* **in the format flags.**

**Definition at line 530 of file ios\_base.h.**

**Referenced by std::noboolalpha(), std::noshowbase(), std::noshowpoint(), std::noshowpos(), std::noskipws(), std::nounitbuf(), and std::nouppercase().**

### streamsize std::ios\_base::precision () const` [inline, inherited]`

**Flags access.**

**Returns:**

**The precision to generate on certain output operations.**

**Definition at line 542 of file ios\_base.h.**

**Referenced by std::basic\_ios\< CharT, Traits \>::copyfmt(), std::num\_put\< CharT, OutIter \>::M\_convert\_float(), std::operator\<\<(), and std::operator\>\>().**

### streamsize std::ios\_base::precision (streamsize \_\_prec)` [inline, inherited]`

**Changing flags.**

**Parameters:**

*prec* **The new precision value.**

**Returns:**

**The previous value of precision().**

**Definition at line 550 of file ios\_base.h.**

### streamsize std::ios\_base::width () const` [inline, inherited]`

**Flags access.**

**Returns:**

**The minimum field width to generate on output operations.**

**Definition at line 564 of file ios\_base.h.**

**Referenced by std::basic\_ios\< CharT, Traits \>::copyfmt(), std::money\_put\< CharT, OutIter \>::do\_put(), std::num\_put\< CharT, OutIter \>::do\_put(), std::num\_put\< CharT, OutIter \>::M\_convert\_float(), std::num\_put\< CharT, OutIter \>::M\_convert\_int(), std::num\_put\< CharT, OutIter \>::M\_insert(), \_\_gnu\_cxx::operator\<\<(), std::operator\<\<(), and std::operator\>\>().**

### streamsize std::ios\_base::width (streamsize \_\_wide)` [inline, inherited]`

**Changing flags.**

**Parameters:**

*wide* **The new width value.**

**Returns:**

**The previous value of width().**

**Definition at line 572 of file ios\_base.h.**

### bool std::ios\_base::sync\_with\_stdio (bool sync = `true`)` [static, inherited]`

**Interaction with the standard C I/O objects.**

**Parameters:**

*sync* **Whether to synchronize or not.**

**Returns:**

**True if the standard streams were previously synchronized.**

**The synchronization referred to is** *only* **that between the standard C facilities (e.g., stdout) and the standard C++ objects (e.g., cout). User-declared streams are unaffected. See http://gcc.gnu.org/onlinedocs/libstdc++/27\_io/howto.html#8 for more.**

**Definition at line 364 of file ios.cc.**

### locale std::ios\_base::getloc () const` [inline, inherited]`

**Locale access.**

**Returns:**

**A copy of the current locale.**

**If** `imbue(loc)` **has previously been called, then this function returns** `loc`**. Otherwise, it returns a copy of** `std::locale()`**, the global C++ locale.**

**Definition at line 614 of file ios\_base.h.**

**Referenced by std::basic\_ios\< CharT, Traits \>::copyfmt(), std::money\_get\< CharT, InIter \>::do\_get(), std::time\_get\< CharT, InIter \>::do\_get\_date(), std::time\_get\< CharT, InIter \>::do\_get\_monthname(), std::time\_get\< CharT, InIter \>::do\_get\_time(), std::time\_get\< CharT, InIter \>::do\_get\_weekday(), std::time\_get\< CharT, InIter \>::do\_get\_year(), std::time\_put\< CharT, OutIter \>::do\_put(), std::money\_put\< CharT, OutIter \>::do\_put(), std::num\_get\< CharT, InIter \>::M\_extract\_float(), std::num\_get\< CharT, InIter \>::M\_extract\_int(), std::time\_get\< CharT, InIter \>::M\_extract\_via\_format(), std::num\_put\< CharT, OutIter \>::M\_widen\_float(), std::num\_put\< CharT, OutIter \>::M\_widen\_int(), std::operator\>\>(), std::time\_put\< CharT, OutIter \>::put(), std::\_\_pad\< CharT, Traits \>::S\_pad(), and std::ws().**

### const locale& std::ios\_base::M\_getloc () const` [inline, inherited]`

**Locale access.**

**Returns:**

**A reference to the current locale.**

**Like getloc above, but returns a reference instead of generating a copy.**

**Definition at line 624 of file ios\_base.h.**

### int std::ios\_base::xalloc () throw ()` [static, inherited]`

**Todo**

**Doc me! See docs/doxygen/TODO and http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.**

**Definition at line 241 of file ios.cc.**

### long& std::ios\_base::iword (int \_\_ix)` [inline, inherited]`

**Todo**

**Doc me! See docs/doxygen/TODO and http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.**

**Definition at line 637 of file ios\_base.h.**

### void\*& std::ios\_base::pword (int \_\_ix)` [inline, inherited]`

**Todo**

**Doc me! See docs/doxygen/TODO and http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.**

**Definition at line 648 of file ios\_base.h.**

### \_\_ostream\_type& std::basic\_ostream\< char , Traits \>::operator\<\< (\_\_ostream\_type &(\*)(\_\_ostream\_type &) \_\_pf)` [inherited]`

**Interface for manipulators.**

**Manuipulators such as** `std::endl` **and std::hex use these functions in constructs like 'std::cout \<\< std::endl'. For more information, see the iomanip header.**

### \_\_ostream\_type& std::basic\_ostream\< char , Traits \>::operator\<\< (long n)` [inherited]`

**Basic arithmetic inserters.**

**Parameters:**

*A* **variable of builtin type.**

**Returns:**

`*this` **if successful**

**These functions use the stream's current locale (specifically, the num\_get facet) to perform numeric formatting.**

### \_\_ostream\_type& std::basic\_ostream\< char , Traits \>::operator\<\< (streambuf\_type \* sb)` [inherited]`

**Extracting from another streambuf.**

**Parameters:**

*sb* **A pointer to a streambuf**

**This function behaves like one of the basic arithmetic extractors, in that it also constructs a sentry onject and has the same error handling behavior.**

**If** *sb* **is NULL, the stream will set failbit in its error state.**

**Characters are extracted from** *sb* **and inserted into** `*this` **until one of the following occurs:**

- •

  **the input stream reaches end-of-file,**

- •

  **insertion into the output sequence fails (in this case, the character that would have been inserted is not extracted), or**

- •

  **an exception occurs while getting a character from** *sb***, which sets failbit in the error state**

**If the function inserts no characters, failbit is set.**

### \_\_ostream\_type& std::basic\_ostream\< char , Traits \>::put (char\_type c)` [inherited]`

**Simple insertion.**

**Parameters:**

*c* **The character to insert.**

**Returns:**

**\*this**

**Tries to insert** *c***.**

**Note:**

**This function is not overloaded on signed char and unsigned char.**

### \_\_ostream\_type& std::basic\_ostream\< char , Traits \>::write (const char\_type \* s, streamsize n)` [inherited]`

**Character string insertion.**

**Parameters:**

*s* **The array to insert.** \
 *n* **Maximum number of characters to insert.**

**Returns:**

**\*this**

**Characters are copied from** *s* **and inserted into the stream until one of the following happens:**

- •

  *n* **characters are inserted**

- •

  **inserting into the output sequence fails (in this case, badbit will be set in the stream's error state)**

**Note:**

**This function is not overloaded on signed char and unsigned char.**

### \_\_ostream\_type& std::basic\_ostream\< char , Traits \>::flush ()` [inherited]`

**Synchronizing the stream buffer.**

**Returns:**

**\*this**

**If rdbuf() is a null pointer, changes nothing.**

**Otherwise, calls rdbuf()**`->pubsync()`**, and if that returns -1, sets badbit.**

### pos\_type std::basic\_ostream\< char , Traits \>::tellp ()` [inherited]`

**Getting the current write position.**

**Returns:**

**A file position object.**

**If fail() is not false, returns** `pos_type`**(-1) to indicate failure. Otherwise returns rdbuf()**`->pubseekoff(0,cur,out)`**.**

### \_\_ostream\_type& std::basic\_ostream\< char , Traits \>::seekp (pos\_type)` [inherited]`

**Changing the current write position.**

**Parameters:**

*pos* **A file position object.**

**Returns:**

**\*this**

**If fail() is not true, calls rdbuf()**`->pubseekpos(pos)`**. If that function fails, sets failbit.**

### \_\_ostream\_type& std::basic\_ostream\< char , Traits \>::seekp (off\_type, ios\_base::seekdir)` [inherited]`

**Changing the current write position.**

**Parameters:**

*off* **A file offset object.** \
 *dir* **The direction in which to seek.**

**Returns:**

**\*this**

**If fail() is not true, calls rdbuf()**`->pubseekoff(off,dir)`**. If that function fails, sets failbit.**

## Member Data Documentation

### const ios\_base::fmtflags std::ios\_base::boolalpha` [static, inherited]`

**Insert/extract** `bool` **in alphabetic rather than numeric format.**

**Definition at line 214 of file ios\_base.h.**

**Referenced by std::boolalpha(), std::num\_put\< CharT, OutIter \>::do\_put(), and std::noboolalpha().**

### const ios\_base::fmtflags std::ios\_base::dec` [static, inherited]`

**Converts integer input or generates integer output in decimal base.**

**Definition at line 216 of file ios\_base.h.**

**Referenced by std::dec(), std::ios\_base::M\_init(), std::operator\<\<(), and std::operator\>\>().**

### const ios\_base::fmtflags std::ios\_base::fixed` [static, inherited]`

**Generate floating-point output in fixed-point notation.**

**Definition at line 218 of file ios\_base.h.**

**Referenced by std::fixed(), std::num\_put\< CharT, OutIter \>::M\_convert\_float(), and std::num\_base::S\_format\_float().**

### const ios\_base::fmtflags std::ios\_base::hex` [static, inherited]`

**Converts integer input or generates integer output in hexadecimal base.**

**Definition at line 220 of file ios\_base.h.**

**Referenced by std::num\_get\< CharT, InIter \>::do\_get(), std::num\_put\< CharT, OutIter \>::do\_put(), std::hex(), std::int\_to\_char(), std::num\_get\< CharT, InIter \>::M\_extract\_int(), std::num\_put\< CharT, OutIter \>::M\_group\_int(), std::num\_put\< CharT, OutIter \>::M\_widen\_int(), std::basic\_ostream\< CharT, Traits \>::operator\<\<(), std::basic\_ostream\< char \>::operator\<\<(), std::operator\<\<(), std::operator\>\>(), and std::num\_base::S\_format\_int().**

### const ios\_base::fmtflags std::ios\_base::internal` [static, inherited]`

**designated.**

**Definition at line 224 of file ios\_base.h.**

**Referenced by std::num\_get\< CharT, InIter \>::do\_get(), std::money\_put\< CharT, OutIter \>::do\_put(), std::num\_put\< CharT, OutIter \>::do\_put(), std::internal(), and std::\_\_pad\< CharT, Traits \>::S\_pad().**

### const ios\_base::fmtflags std::ios\_base::left` [static, inherited]`

**generated output. (I.e., the thing you print is flush left.)**

**Definition at line 227 of file ios\_base.h.**

**Referenced by std::money\_put\< CharT, OutIter \>::do\_put(), std::left(), \_\_gnu\_cxx::operator\<\<(), and std::\_\_pad\< CharT, Traits \>::S\_pad().**

### const ios\_base::fmtflags std::ios\_base::oct` [static, inherited]`

**Converts integer input or generates integer output in octal base.**

**Definition at line 229 of file ios\_base.h.**

**Referenced by std::int\_to\_char(), std::num\_get\< CharT, InIter \>::M\_extract\_int(), std::num\_put\< CharT, OutIter \>::M\_group\_int(), std::num\_put\< CharT, OutIter \>::M\_widen\_int(), std::oct(), std::basic\_ostream\< CharT, Traits \>::operator\<\<(), std::basic\_ostream\< char \>::operator\<\<(), std::operator\<\<(), std::operator\>\>(), and std::num\_base::S\_format\_int().**

### const ios\_base::fmtflags std::ios\_base::right` [static, inherited]`

**generated output. (I.e., the thing you print is flush right.)**

**Definition at line 232 of file ios\_base.h.**

**Referenced by std::right().**

### const ios\_base::fmtflags std::ios\_base::scientific` [static, inherited]`

**Generates floating-point output in scientific notation.**

**Definition at line 234 of file ios\_base.h.**

**Referenced by std::num\_base::S\_format\_float(), and std::scientific().**

### const ios\_base::fmtflags std::ios\_base::showbase` [static, inherited]`

**output.**

**Definition at line 237 of file ios\_base.h.**

**Referenced by std::money\_get\< CharT, InIter \>::do\_get(), std::num\_get\< CharT, InIter \>::do\_get(), std::money\_put\< CharT, OutIter \>::do\_put(), std::num\_put\< CharT, OutIter \>::do\_put(), std::int\_to\_char(), std::num\_put\< CharT, OutIter \>::M\_group\_int(), std::num\_put\< CharT, OutIter \>::M\_widen\_int(), std::noshowbase(), std::num\_base::S\_format\_int(), and std::showbase().**

### const ios\_base::fmtflags std::ios\_base::showpoint` [static, inherited]`

**floating-point output.**

**Definition at line 240 of file ios\_base.h.**

**Referenced by std::noshowpoint(), std::num\_base::S\_format\_float(), and std::showpoint().**

### const ios\_base::fmtflags std::ios\_base::showpos` [static, inherited]`

**Generates a + sign in non-negative generated numeric output.**

**Definition at line 242 of file ios\_base.h.**

**Referenced by std::num\_get\< CharT, InIter \>::do\_get(), std::num\_put\< CharT, OutIter \>::do\_put(), std::int\_to\_char(), std::noshowpos(), std::num\_base::S\_format\_float(), std::num\_base::S\_format\_int(), and std::showpos().**

### const ios\_base::fmtflags std::ios\_base::skipws` [static, inherited]`

**Skips leading white space before certain input operations.**

**Definition at line 244 of file ios\_base.h.**

**Referenced by std::ios\_base::M\_init(), std::noskipws(), std::basic\_istream\< CharT, Traits \>::sentry::sentry(), and std::skipws().**

### const ios\_base::fmtflags std::ios\_base::unitbuf` [static, inherited]`

**Flushes output after each output operation.**

**Definition at line 246 of file ios\_base.h.**

**Referenced by std::nounitbuf(), std::ios\_base::Init::S\_ios\_create(), std::unitbuf(), and std::basic\_ostream\< CharT, Traits \>::sentry::~sentry().**

### const ios\_base::fmtflags std::ios\_base::uppercase` [static, inherited]`

**in generated output.**

**Definition at line 249 of file ios\_base.h.**

**Referenced by std::num\_get\< CharT, InIter \>::do\_get(), std::num\_put\< CharT, OutIter \>::do\_put(), std::int\_to\_char(), std::nouppercase(), std::num\_base::S\_format\_float(), std::num\_base::S\_format\_int(), and std::uppercase().**

### const ios\_base::fmtflags std::ios\_base::adjustfield` [static, inherited]`

**A mask of left\|right\|internal. Useful for the 2-arg form of** `setf`**.**

**Definition at line 251 of file ios\_base.h.**

**Referenced by std::money\_put\< CharT, OutIter \>::do\_put(), std::internal(), std::left(), std::right(), and std::\_\_pad\< CharT, Traits \>::S\_pad().**

### const ios\_base::fmtflags std::ios\_base::basefield` [static, inherited]`

**A mask of dec\|oct\|hex. Useful for the 2-arg form of** `setf`**.**

**Definition at line 253 of file ios\_base.h.**

**Referenced by std::dec(), std::num\_get\< CharT, InIter \>::do\_get(), std::num\_put\< CharT, OutIter \>::do\_put(), std::hex(), std::int\_to\_char(), std::num\_get\< CharT, InIter \>::M\_extract\_int(), std::num\_put\< CharT, OutIter \>::M\_group\_int(), std::num\_put\< CharT, OutIter \>::M\_widen\_int(), std::oct(), std::basic\_ostream\< CharT, Traits \>::operator\<\<(), std::basic\_ostream\< char \>::operator\<\<(), std::operator\<\<(), std::operator\>\>(), and std::num\_base::S\_format\_int().**

### const ios\_base::fmtflags std::ios\_base::floatfield` [static, inherited]`

**A mask of scientific\|fixed. Useful for the 2-arg form of** `setf`**.**

**Definition at line 255 of file ios\_base.h.**

**Referenced by std::fixed(), std::num\_base::S\_format\_float(), and std::scientific().**

### const ios\_base::iostate std::ios\_base::badbit` [static, inherited]`

**as an irrecoverable read error from a file).**

**Definition at line 272 of file ios\_base.h.**

**Referenced by std::basic\_ios\< char, Traits \>::bad(), std::basic\_ios\< CharT, Traits \>::clear(), std::basic\_ios\< char, Traits \>::fail(), std::basic\_ostream\< CharT, Traits \>::flush(), std::basic\_istream\< CharT, Traits \>::get(), std::getline(), std::basic\_istream\< CharT, Traits \>::getline(), std::basic\_istream\< CharT, Traits \>::ignore(), std::basic\_ios\< CharT, Traits \>::init(), std::ios\_base::M\_grow\_words(), std::operator\<\<(), std::basic\_ostream\< CharT, Traits \>::operator\<\<(), std::operator\>\>(), std::basic\_istream\< CharT, Traits \>::operator\>\>(), std::basic\_istream\< CharT, Traits \>::peek(), std::basic\_ostream\< CharT, Traits \>::put(), std::basic\_istream\< CharT, Traits \>::putback(), std::basic\_istream\< CharT, Traits \>::read(), std::basic\_istream\< CharT, Traits \>::readsome(), std::basic\_istream\< CharT, Traits \>::seekg(), std::basic\_ostream\< CharT, Traits \>::seekp(), std::basic\_istream\< CharT, Traits \>::sync(), std::basic\_istream\< CharT, Traits \>::tellg(), std::basic\_ostream\< CharT, Traits \>::tellp(), std::basic\_istream\< CharT, Traits \>::unget(), std::basic\_ostream\< CharT, Traits \>::write(), and std::basic\_ostream\< CharT, Traits \>::sentry::~sentry().**

### const ios\_base::iostate std::ios\_base::eofbit` [static, inherited]`

**Indicates that an input operation reached the end of an input sequence.**

**Definition at line 274 of file ios\_base.h.**

**Referenced by std::money\_get\< CharT, InIter \>::do\_get(), std::time\_get\< CharT, InIter \>::do\_get\_date(), std::time\_get\< CharT, InIter \>::do\_get\_monthname(), std::time\_get\< CharT, InIter \>::do\_get\_time(), std::time\_get\< CharT, InIter \>::do\_get\_weekday(), std::time\_get\< CharT, InIter \>::do\_get\_year(), std::basic\_ios\< char, Traits \>::eof(), std::basic\_istream\< CharT, Traits \>::get(), std::getline(), std::basic\_istream\< CharT, Traits \>::getline(), std::basic\_istream\< CharT, Traits \>::ignore(), std::num\_get\< CharT, InIter \>::M\_extract\_float(), std::num\_get\< CharT, InIter \>::M\_extract\_int(), std::operator\>\>(), std::basic\_istream\< CharT, Traits \>::peek(), std::basic\_istream\< CharT, Traits \>::read(), std::basic\_istream\< CharT, Traits \>::readsome(), std::basic\_istream\< CharT, Traits \>::sentry::sentry(), and std::ws().**

### const ios\_base::iostate std::ios\_base::failbit` [static, inherited]`

**desired characters.**

**Definition at line 278 of file ios\_base.h.**

**Referenced by std::basic\_fstream\< CharT, Traits \>::close(), std::basic\_ofstream\< CharT, Traits \>::close(), std::basic\_ifstream\< CharT, Traits \>::close(), std::money\_get\< CharT, InIter \>::do\_get(), std::num\_get\< CharT, InIter \>::do\_get(), std::time\_get\< CharT, InIter \>::do\_get\_monthname(), std::time\_get\< CharT, InIter \>::do\_get\_weekday(), std::time\_get\< CharT, InIter \>::do\_get\_year(), std::basic\_ios\< char, Traits \>::fail(), std::basic\_istream\< CharT, Traits \>::get(), std::getline(), std::basic\_istream\< CharT, Traits \>::getline(), std::num\_get\< CharT, InIter \>::M\_extract\_float(), std::num\_get\< CharT, InIter \>::M\_extract\_int(), std::time\_get\< CharT, InIter \>::M\_extract\_name(), std::time\_get\< CharT, InIter \>::M\_extract\_num(), std::time\_get\< CharT, InIter \>::M\_extract\_via\_format(), std::basic\_fstream\< CharT, Traits \>::open(), std::basic\_ofstream\< CharT, Traits \>::open(), std::basic\_ifstream\< CharT, Traits \>::open(), std::operator\<\<(), std::basic\_ostream\< CharT, Traits \>::operator\<\<(), std::basic\_istream\< CharT, Traits \>::operator\>\>(), std::operator\>\>(), std::basic\_istream\< CharT, Traits \>::read(), std::basic\_istream\< CharT, Traits \>::seekg(), std::basic\_ostream\< CharT, Traits \>::seekp(), std::basic\_ostream\< CharT, Traits \>::sentry::sentry(), and std::basic\_istream\< CharT, Traits \>::sentry::sentry().**

### const ios\_base::iostate std::ios\_base::goodbit` [static, inherited]`

**Indicates all is well.**

**Definition at line 280 of file ios\_base.h.**

**Referenced by std::basic\_ostream\< CharT, Traits \>::flush(), std::basic\_istream\< CharT, Traits \>::get(), std::getline(), std::basic\_istream\< CharT, Traits \>::getline(), std::basic\_istream\< CharT, Traits \>::ignore(), std::basic\_ios\< CharT, Traits \>::init(), std::basic\_ostream\< CharT, Traits \>::operator\<\<(), std::basic\_istream\< CharT, Traits \>::operator\>\>(), std::operator\>\>(), std::basic\_istream\< CharT, Traits \>::peek(), std::basic\_ostream\< CharT, Traits \>::put(), std::basic\_istream\< CharT, Traits \>::putback(), std::basic\_istream\< CharT, Traits \>::read(), std::basic\_istream\< CharT, Traits \>::readsome(), std::basic\_istream\< CharT, Traits \>::seekg(), std::basic\_ostream\< CharT, Traits \>::seekp(), std::basic\_istream\< CharT, Traits \>::sentry::sentry(), std::basic\_istream\< CharT, Traits \>::sync(), std::basic\_istream\< CharT, Traits \>::unget(), and std::basic\_ostream\< CharT, Traits \>::write().**

### const ios\_base::openmode std::ios\_base::app` [static, inherited]`

**Seek to end before each write.**

**Definition at line 298 of file ios\_base.h.**

**Referenced by std::basic\_stringbuf\< CharT, Traits, Alloc \>::M\_stringbuf\_init().**

### const ios\_base::openmode std::ios\_base::ate` [static, inherited]`

**Open and seek to end immediately after opening.**

**Definition at line 300 of file ios\_base.h.**

**Referenced by std::basic\_stringbuf\< CharT, Traits, Alloc \>::M\_stringbuf\_init(), and std::basic\_filebuf\< CharT, Traits \>::open().**

### const ios\_base::openmode std::ios\_base::binary` [static, inherited]`

**http://gcc.gnu.org/onlinedocs/libstdc++/27\_io/howto.html#7 for more.**

**Definition at line 305 of file ios\_base.h.**

### const ios\_base::openmode std::ios\_base::in` [static, inherited]`

**Open for input. Default for** `ifstream` **and fstream.**

**Definition at line 307 of file ios\_base.h.**

**Referenced by std::basic\_filebuf\< CharT, \_\_gnu\_cxx::enc\_char\_traits\< CharT \> \>::M\_is\_indeterminate(), std::basic\_stringbuf\< CharT, Traits, Alloc \>::M\_really\_sync(), std::basic\_filebuf\< CharT, \_\_gnu\_cxx::enc\_char\_traits\< CharT \> \>::M\_set\_determinate(), std::basic\_filebuf\< CharT, \_\_gnu\_cxx::enc\_char\_traits\< CharT \> \>::M\_set\_indeterminate(), std::basic\_filebuf\< CharT, Traits \>::M\_underflow\_common(), std::basic\_ifstream\< CharT, Traits \>::open(), std::basic\_filebuf\< CharT, Traits \>::pbackfail(), std::ios\_base::Init::S\_ios\_create(), std::basic\_istream\< CharT, Traits \>::seekg(), std::strstreambuf::seekoff(), std::basic\_stringbuf\< CharT, Traits, Alloc \>::seekoff(), std::basic\_filebuf\< CharT, Traits \>::seekoff(), std::basic\_stringbuf\< CharT, Traits, Alloc \>::seekpos(), std::basic\_streambuf\< char, Traits \>::setg(), std::basic\_filebuf\< CharT, Traits \>::showmanyc(), and std::basic\_istream\< CharT, Traits \>::tellg().**

### const ios\_base::openmode std::ios\_base::out` [static, inherited]`

**Open for output. Default for** `ofstream` **and fstream.**

**Definition at line 309 of file ios\_base.h.**

**Referenced by std::basic\_filebuf\< CharT, \_\_gnu\_cxx::enc\_char\_traits\< CharT \> \>::M\_is\_indeterminate(), std::basic\_stringbuf\< CharT, Traits, Alloc \>::M\_really\_sync(), std::basic\_filebuf\< CharT, \_\_gnu\_cxx::enc\_char\_traits\< CharT \> \>::M\_set\_determinate(), std::basic\_filebuf\< CharT, \_\_gnu\_cxx::enc\_char\_traits\< CharT \> \>::M\_set\_indeterminate(), std::basic\_filebuf\< CharT, Traits \>::M\_underflow\_common(), std::basic\_ofstream\< CharT, Traits \>::open(), std::basic\_stringbuf\< CharT, Traits, Alloc \>::overflow(), std::basic\_filebuf\< CharT, Traits \>::overflow(), std::basic\_filebuf\< CharT, Traits \>::pbackfail(), std::ios\_base::Init::S\_ios\_create(), std::strstreambuf::seekoff(), std::basic\_stringbuf\< CharT, Traits, Alloc \>::seekoff(), std::basic\_filebuf\< CharT, Traits \>::seekoff(), std::basic\_ostream\< CharT, Traits \>::seekp(), std::basic\_stringbuf\< CharT, Traits, Alloc \>::seekpos(), std::basic\_streambuf\< char, Traits \>::setp(), std::basic\_stringbuf\< CharT, Traits, Alloc \>::str(), std::basic\_ostream\< CharT, Traits \>::tellp(), and std::basic\_streambuf\< char, Traits \>::uflow().**

### const ios\_base::openmode std::ios\_base::trunc` [static, inherited]`

**Open for input. Default for** `ofstream`**.**

**Definition at line 311 of file ios\_base.h.**

### const ios\_base::seekdir std::ios\_base::beg` [static, inherited]`

**Request a seek relative to the beginning of the stream.**

**Definition at line 325 of file ios\_base.h.**

**Referenced by std::strstreambuf::seekoff(), std::strstreambuf::seekpos(), and std::basic\_filebuf\< CharT, Traits \>::seekpos().**

### const ios\_base::seekdir std::ios\_base::cur` [static, inherited]`

**Request a seek relative to the current position within the sequence.**

**Definition at line 327 of file ios\_base.h.**

**Referenced by std::basic\_filebuf\< CharT, Traits \>::M\_really\_overflow(), std::basic\_filebuf\< CharT, Traits \>::M\_underflow\_common(), std::basic\_filebuf\< CharT, Traits \>::pbackfail(), std::strstreambuf::seekoff(), std::basic\_stringbuf\< CharT, Traits, Alloc \>::seekoff(), std::basic\_filebuf\< CharT, Traits \>::seekoff(), std::basic\_filebuf\< CharT, \_\_gnu\_cxx::enc\_char\_traits\< CharT \> \>::sync(), std::basic\_istream\< CharT, Traits \>::tellg(), and std::basic\_ostream\< CharT, Traits \>::tellp().**

### const ios\_base::seekdir std::ios\_base::end` [static, inherited]`

**Request a seek relative to the current end of the sequence.**

**Definition at line 329 of file ios\_base.h.**

**Referenced by std::basic\_filebuf\< CharT, Traits \>::open(), std::strstreambuf::seekoff(), and std::basic\_stringbuf\< CharT, Traits, Alloc \>::seekoff().**

## Author

**Generated automatically by Doxygen for libstdc++-v3 Source from the source code.**
