std::basic_ostream<CharT,Traits>::put
From cppreference.com
< cpp | io | basic ostream
basic_ostream& put( char_type ch ); | ||
Behaves as an UnformattedOutputFunction. After constructing and checking the sentry object, writes the character ch
to the output stream.
If the output fails for any reason, sets badbit
.
Contents |
[edit]Parameters
ch | - | character to write |
[edit]Return value
*this
[edit]Notes
This function is not overloaded for the types signedchar or unsignedchar, unlike the formatted operator<<.
Unlike formatted output functions, this function does not set the failbit
if the output fails.
[edit]Example
Run this code
#include <fstream>#include <iostream> int main(){std::cout.put('a');// normal usagestd::cout.put('\n'); std::ofstream s("/does/not/exist/"); s.clear();// pretend the stream is goodstd::cout<<"Unformatted output: "; s.put('c');// this will set badbit, but not failbitstd::cout<<" fail="<<bool(s.rdstate()& s.failbit);std::cout<<" bad="<< s.bad()<<'\n'; s.clear();std::cout<<"Formatted output: "; s <<'c';// this will set badbit and failbitstd::cout<<" fail="<<bool(s.rdstate()& s.failbit);std::cout<<" bad="<< s.bad()<<'\n';}
Output:
a Unformatted output: fail=0 bad=1 Formatted output: fail=1 bad=1
[edit]See also
inserts character data or insert into rvalue stream (function template) | |
inserts blocks of characters (public member function) |