「stdout」に書き込むプログラムはファイルに書き込みますか? スクリーン?stdout への書き込みの意味がわかりません。
6 に答える
つまり、セッションのメイン出力デバイスで出力を印刷していることを意味します...それが何であれ。ユーザーのコンソール、tty セッション、ファイル、または誰が何を知っているか。そのデバイスが何であるかは、プログラムがどこからどのように実行されているかによって異なります。
次のコマンドは、標準出力デバイス (stdout) に書き込みます...
printf( "hello world\n" );
これは、本質的に、これを行う別の方法です...
fprintf( stdout, "hello world\n" );
その場合は、アプリケーションのデフォルトの出力デバイスを表すストリームstdout
へのポインターです。FILE
使用することもできます
fprintf( stderr, "that didn't go well\n" );
この場合、アプリケーションの標準エラー出力デバイスに出力を送信します。これは、 -- と同じ場合もそうでない場合もありますが、stdout
-- と同様にstdout
、エラー メッセージのデフォルトの出力デバイスを表すストリームstderr
へのポインタです。FILE
stdout
UNIX の標準出力ストリームです。http://www.gnu.org/software/libc/manual/html_node/Standard-Streams.html#Standard-Streamsを参照してください。ターミナルで実行すると、ターミナルに書き込まれたデータが表示されstdout
、選択したとおりにリダイレクトできます。
stdout
は標準出力ストリームの略で、オペレーティング システム自体がプログラムで使用できるストリームです。stdin
および と一緒に、最初からプログラムで使用できますstderr
。
それらが指す (または元になる) ものは何でもかまいません。実際には、ストリームは、データを送信または取得するためのインターフェイスとして使用できるオブジェクトをプログラムに提供するだけです。デフォルトでは、通常は端末ですが、ファイル、別のプロセスへのパイプなど、必要な場所にリダイレクトできます。