auの日記

プログラミング初心者の日記。(auはハンドルネームです)

標準エラー出力(stderr)とは

auです。

今回は「標準エラー出力(stderr)」について調べました。

標準エラー出力とは

標準エラー出力とは、エラーメッセージや警告(Warning)メッセージを出力するためのストリームです。

標準出力の"stdout"があるじゃないと思うかもしれませんが、"stdout"と"stderr"は別物で、stdoutはリダイレクトされ、stderrはリダイレクトされないため、分かれて出力されます。

#include <stdio.h>

int main(void) {

    fprintf(stdout, "stdout");
    fprintf(stderr, "stderr");

    return 0;
}

// ./a.out 1>stdout.txt 2>stderr.txt
// 実行結果

f:id:program-shoshinsya:20181005172728p:plain

./a.out 1>stdout.txt 2>stderr.txtの解説

./a.outの出力先を変更できます。

  1. 1>stdout.txt 標準出力(stdout)を"stdout.txt"に出力
  2. 2>stderr.txt 標準エラー出力(stderr)を"stderr.txt"に出力