I/O manipulators | ||||
Print functions(C++23) | ||||
C-style I/O | ||||
Buffers | ||||
(C++23) | ||||
(C++98/26*) | ||||
(C++20) | ||||
Streams | ||||
Abstractions | ||||
File I/O | ||||
String I/O | ||||
Array I/O | ||||
(C++23) | ||||
(C++23) | ||||
(C++23) | ||||
(C++98/26*) | ||||
(C++98/26*) | ||||
(C++98/26*) | ||||
Synchronized Output | ||||
(C++20) | ||||
Types | ||||
Error category interface | ||||
(C++11) | ||||
(C++11) |
Global objects | ||||
Member functions | ||||
(C++11) | ||||
Formatted output | ||||
Unformatted output | ||||
basic_ostream::put | ||||
Positioning | ||||
Miscellaneous | ||||
(C++11) | ||||
Member classes | ||||
Non-member functions | ||||
(C++23) | ||||
(C++23) | ||||
(C++23) | ||||
basic_ostream& put( char_type ch); | ||
Behaves as anUnformattedOutputFunction. After constructing and checking the sentry object, writes the characterch
to the output stream.
If the output fails for any reason, setsbadbit
.
Contents |
ch | - | character to write |
*this
This function is not overloaded for the typessignedchar orunsignedchar, unlike the formattedoperator<<.
Unlike formatted output functions, this function does not set thefailbit
if the output fails.
#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:
aUnformatted output: fail=0 bad=1Formatted output: fail=1 bad=1
inserts character data or insert into rvalue stream (function template)[edit] | |
inserts blocks of characters (public member function)[edit] |