Namespaces
Variants
Views
Actions

std::basic_ostream::write

From cppreference.com
basic_ostream& write( const char_type* s, std::streamsize count );

Outputs characters from successive locations in the character array whose first element is pointed to by s. Characters are inserted into the output sequence until one of the following occurs:

  • exactly count characters are inserted
  • inserting into the output sequence fails (in which case setstate(badbit) is called)

This function is an unformatted output function: it begin execution by constructing an object of type sentry, which flushes the tie()'d output buffers if necessary and checks the stream errors. After construction, if the sentry object returns false, the function returns without attempting any output. If an exception is thrown during output, then ios::badbit is set (the exception is suppressed unless exceptions()&badbit) != 0, in which case it is rethrown)

Contents

[edit] Parameters

s - pointer to the character string to write
count - number of characters to write

[edit] Return value

*this

[edit] Notes

This function is not overloaded for the types signed char or unsigned char, unlike the formatted operator<<

Also, unlike the formatted output functions, this function does not set the failbit on failure.

[edit] Exceptions

If an exception occurs during output and exceptions()&badbit != 0, rethrows that exception.

If output fails and exceptions()&badbit != 0, throws ios_base::failure.

[edit] Example

This function may be used to output object representations, i.e. binary output

#include <iostream>
int main()
{
    int n = 0x41424344;
    std::cout.write(reinterpret_cast<char*>(&n), sizeof n);
    std::cout << '\n';
}

Output:

DCBA

[edit] See also

inserts character data
(function) [edit]
inserts a character
(public member function) [edit]