# 1.0.0[−][src]Function std::io::stdout

ⓘImportant traits for Stdout

### Important traits for Stdout

`impl Write for Stdout`

    pub fn stdout() -> Stdout

Constructs a new handle to the standard output of the current process.

Each handle returned is a reference to a shared global buffer whose access is synchronized via a mutex. If you need more explicit control over locking, see the `Stdout::lock` method.

### Note: Windows Portability Consideration

When operating in a console, the Windows implementation of this stream does not support non-UTF-8 byte sequences. Attempting to write bytes that are not valid UTF-8 will return an error.

# Examples

Using implicit synchronization:

    use std::io::{self, Write};

    fn main() -> io::Result<()> {
        io::stdout().write_all(b"hello world")?;

        Ok(())
    }Run

Using explicit synchronization:

    use std::io::{self, Write};

    fn main() -> io::Result<()> {
        let stdout = io::stdout();
        let mut handle = stdout.lock();

        handle.write_all(b"hello world")?;

        Ok(())
    }Run

# Help

## Keyboard Shortcuts

`?`
  Show this help dialog
`S`
  Focus the search field
`↑`
  Move up in search results
`↓`
  Move down in search results
`↹`
  Switch tab
`⏎`
  Go to active search result
`+`
  Expand all sections
`-`
  Collapse all sections

## Search Tricks

Prefix searches with a type followed by a colon (e.g., `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g., `vec -> usize` or `* -> vec`)

Search multiple things at once by splitting your query with comma (e.g., `str,u8` or `String,struct:Vec,test`)