Namespaces
Variants

std::basic_ostream<CharT,Traits>:: put

From cppreference.net
basic_ostream & put ( char_type ch ) ;

UnformattedOutputFunction として振る舞う。セントリオブジェクトを構築・チェックした後、文字 ch を出力ストリームに書き込む。

出力が何らかの理由で失敗した場合、 badbit を設定します。

目次

パラメータ

ch - 書き込む文字

戻り値

* this

注記

この関数は、フォーマット済みの operator<< とは異なり、 signed char または unsigned char 型に対してオーバーロードされていません。

書式化出力関数とは異なり、この関数は出力が失敗した場合に failbit を設定しません。

#include <fstream>
#include <iostream>
int main()
{
    std::cout.put('a'); // 通常の使用法
    std::cout.put('\n');
    std::ofstream s("/does/not/exist/");
    s.clear(); // ストリームが正常であると仮定
    std::cout << "Unformatted output: ";
    s.put('c'); // これはbadbitを設定するが、failbitは設定しない
    std::cout << " fail=" << bool(s.rdstate() & s.failbit);
    std::cout << " bad=" << s.bad() << '\n';
    s.clear();
    std::cout << "Formatted output:   ";
    s << 'c'; // これはbadbitと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

関連項目

文字データを挿入、または右辺値ストリームに挿入
(関数テンプレート)
文字ブロックを挿入
(公開メンバ関数)