概要
clogもwclogも、標準エラー出力に対する出力ストリームオブジェクトである。
すなわち、std::basic_streambufから派生していて<cstdio>のstderrオブジェクトに結びつけられているストリームバッファに出力する。
clogはcharacter logを意味する。またwclogはwide character logを意味する。[1]
例
#include <iostream>
#include <fstream>
int main(int argc, char** argv)
{
char const* filename = argv[1];
if (filename != nullptr)
{
std::clog << "ファイル名: " << filename << std::endl;
std::fstream f(filename);
std::cout << f.rdbuf() << std::endl;
}
else
{
std::clog << "ファイル名を指定してください" << std::endl;
return 1;
}
}
出力
(コマンドラインを_program_ foo.txtとしてプログラムを起動した場合)
ファイル名: foo.txt
(foo.txtの内容)
(コマンドラインを_program_ foo.txt > /dev/null (Unix系OS), _program_ foo.txt > NUL (Win32, DOS), _program_ foo.txt > $null (Win32 PowerShell)などとしてプログラムを起動した場合)
ファイル名: foo.txt
バージョン
言語
- C++98
出典
- ^ Stroustrup: C++ Style and Technique FAQ(2018-08-21 17:01 JST 閲覧)