std::basic_ostream<CharT,Traits>::put
basic_ostream& put( char_type ch ); |
Ведёт себя как UnformattedOutputFunction. После создания и проверки объекта sentry записывает символ ch в выходной поток.
Если по какой-либо причине вывод завершается неудачей, устанавливает badbit.
Параметры
| ch | - | символ для записи |
Возвращаемое значение
*this
Примечания
В отличие от форматированного operator<<, эта функция не перегружена для типов signed char или unsigned char.
В отличие от функций форматированного вывода, эта функция не устанавливает failbit, если вывод завершается неудачей.
Пример
#include <fstream>
#include <iostream>
int main()
{
std::cout.put('a'); // normal usage
std::cout.put('\n');
std::ofstream s("/does/not/exist/");
s.clear(); // pretend the stream is good
std::cout << "Unformatted output: ";
s.put('c'); // this will set badbit, but not failbit
std::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 failbit
std::cout << " fail=" << bool(s.rdstate() & s.failbit);
std::cout << " bad=" << s.bad() << '\n';
}
Вывод:
a Unformatted output: fail=0 bad=1 Formatted output: fail=1 bad=1
См. также
| вставляет символьные данные или выполняет вставку в поток rvalue (шаблон функции) |
|
| вставляет блоки символов (открытая функция-член) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/io/basic_ostream/put