<ストリーム>
 
 ストリームは、Cプログラムとファイルを結ぶデータの流れの様なものです。プログラムでファイルをオープンすると、プログラムとファイルの間にストリームが確立され、このストリーム上に入出力のためのバッファがおかれます。ファイル入出力を行うには、まずファイルオープンによってこのストリームを確立しなくてはなりません。
 
<標準ストリーム>
 
 キーボード、画面といった出力デバイスも「ファイル」として扱われます。それらを示すポインタとして「標準ストリーム」があり、これらはプログラム実行時に自動的にオープンされる特別なファイルということになります。
 
| ファイルポインタ | 機能 | デバイス | 
| stdin | 標準入力 | 通常はキーボード | 
| stdout | 標準出力 | 通常はモニタ画面 | 
| stderr | 標準エラー出力 | 通常はモニタ画面 | 
 
 例えばprintfは,ファイルに書き出す関数fprintfの書き込み先にstdoutを指定したのと全く同じです。fprintfにstderrを指定した場合もprintfと同様に画面に書き出しますが、stdoutに対して行った出力はリダイレクトされるのに対し、stderrに対して行った出力はリダイレクトされない、という違いがあります。