Provided by: manpages-ja-dev_0.5.0.0.20180315+dfsg-1_all bug

名前

       stdio - 標準入出力ライブラリ関数

書式

       #include <stdio.h>

       FILE *stdin;
       FILE *stdout;
       FILE *stderr;

説明

       標準入出力ライブラリは、簡単かつ効果のよい、 バッファーリングされたストリーム入出力インターフェースを提供
       する。 入力と出力は論理データストリームに割り付けられ、 入出力の物理的な特徴は隠蔽される。 このライブラリ
       に属する関数とマクロを以下に挙げる。 より詳しい情報は個々の man ページから得ることができる。

       ファイルを  オープン  (open) する ことによって、 ストリームは外部ファイル (通常は物理デバイス) に連結され
       る。 この操作には新しくファイルを作成することも含まれる。  既存のファイルと同じ名前のファイルを新たに作る
       と、  もとのファイルの中身が捨てられてしまう。  ファイルが位置指定リクエストをサポートしている  (ディスク
       ファイルなどが相当する。逆の例としては端末が挙げられる) 場合、 そのストリームに連結された  ファイル位置指
       示子  (file position indicator) は、追加モードで開かれない限りファイルの先頭 (0 バイト目) に位置する。 追
       加モードを使用した場合、 位置指示子をファイルの先頭に置かれるか末尾に置かれるかは規定されていない。  位置
       指示子は、  以降の読み書きや位置指定リクエストによって変更される。 すべての入力は、 fgetc(3) 関数を次々に
       呼び出して文字を読み込んだかのように行われる。 一方すべての出力は、 fputc(3) 関数を次々に呼び出して文字を
       書き込んだかのように行われる。

       ファイルを  クローズ (close) する ことによって、そのファイルはストリームから切り離される。 出力ストリーム
       は、そのストリームがファイルから切り離される前にフラッシュされる  (書き込まれていないすべてのバッファーの
       内容がホスト環境に転送される)。  FILE オブジェクトへのポインターの値は、 ファイルを閉じた後では不確定にな
       る (ゴミになってしまう)。

       ファイルはその後 (同じまたは別のプログラムによって)  再びオープンされることもあり、  その内容が修正された
       り変更されたりする  (そのファイルで先頭への位置移動が可能であれば)。  main 関数がもとの呼び出し側に返った
       り、 exit(3)  関数が呼ばれた場合、 プログラムの終了の前に 現在開いているすべてのファイルは閉じられる  (そ
       の結果、すべての出力ストリームはフラッシュされる)。 プログラムの停止に abort(3)  のような他の方法を用いた
       場合には、 ファイルが正しく閉じられる保証はない。

       プログラムの起動時に 3 個のテキストストリームが予め定義されており、 それらは明示的に開く必要がない。 標準
       入力 (standard input) (通常の入力を読み取るのに使う)、 標準出力 (standard output) (通常の出力を書き込むの
       に使う)、 標準エラー出力  (standard  error)  (診断出力を書き込むのに使う)  である。  これらのストリームは
       stdin, stdout, stderr と短縮して表現される。 オープンされたときには、 標準エラーストリームは 完全にはバッ
       ファーリングされていない。 標準入力ストリームと標準出力ストリームは、  ストリームがインタラクティブなデバ
       イスを参照していなければ、 完全にバッファーリングされている。

       端末デバイスを参照する出力ストリームは、  デフォルトでは常に行単位でバッファーリングされている。 ただしそ
       のようなストリームにおけるバッファー内の出力は、 端末デバイスを参照している入力ストリームからの読み込みが
       あるたびに、 自動的に書き込まれる。 出力端末に行の一部を書き込んだ後で大量の計算を行う場合、 出力が表示さ
       れるように、計算に取りかかる前に標準出力に対して fflush(3) を実行する必要がある。

       stdio ライブラリは libc ライブラリの一部であり、ルーチンは コンパイラー cc(1)  と pc(1)  によって必要な時
       に自動的に読み込まれる。 後述する man ページ中の「書式」の節には、 どのインクルードファイルを使用しなけれ
       ばならないか、 その関数のコンパイラー宣言はどのようなものか、  どのような外部変数が関係するのかが示されて
       いる。

       BUFSIZ, EOF, FILENAME_MAX, FOPEN_MAX, L_cuserid, L_ctermid, L_tmpnam, NULL, SEEK_END, SEEK_SET, SEEK_CUR,
       TMP_MAX, clearerr, feof, ferror, fileno, getc, getchar, putc, putchar, stderr, stdin, stdout はマクロとし
       て定義されている。  これらの名前は、現在の定義を #undef で削除しない限り、再利用することはできない。 マク
       ロ関数の関数版として、 feof, ferror, clearerr, fileno, getc, getchar, putc, putchar がある。 マクロの定義
       が明示的に消去されている場合には、 これらを使用することになるだろう。

   関数のリスト
       関数          説明
       ─────────────────────────────────────────────────────────────────────
       clearerr      ストリームの状態の確認とリセット
       fclose        ストリームをクローズする
       fdopen        ストリームをオープンする
       feof          ストリームの状態の確認とリセット
       ferror        ストリームの状態の確認とリセット
       fflush        ストリームをフラッシュする
       fgetc         次の文字または語を入力ストリームから獲得する
       fgetpos       ストリームの位置を取得する
       fgets         ストリームから行を取得する
       fileno        引き数であるストリームの整数値のディスクリプターを返す
       fopen         ストリームをオープンする
       fprintf       書式付き出力変換
       fpurge        ストリームをフラッシュする
       fputc         文字または語をストリームに出力する
       fputs         行をストリームに出力する
       fread         バイナリーストリーム入出力
       freopen       ストリームをオープンする
       fscanf        書式付き入力変換
       fseek         ストリームの位置指示子を移動する
       fsetpos       ストリームの位置指示子を移動する
       ftell         ストリームの位置を取得する
       fwrite        バイナリーストリーム入出力
       getc          次の文字または語を入力ストリームから取得する
       getchar       次の文字または語を入力ストリームから取得する
       gets          行を入力ストリームから取得する
       getw          次の文字または語を入力ストリームから取得する
       mktemp        他と重ならないテンポラリファイル名を作る
       perror        システムエラーメッセージ
       printf        書式付き出力変換
       putc          文字または語をストリームに出力する
       putchar       文字または語をストリームに出力する
       puts          行をストリームに出力する
       putw          文字または語をストリームに出力する
       remove        ディレクトリエントリーを削除する
       rewind        ストリームの位置指示子を移動する
       scanf         書式付き入力変換
       setbuf        ストリームのバッファーリングの操作
       setbuffer     ストリームのバッファーリングの操作
       setlinebuf    ストリームのバッファーリングの操作
       setvbuf       ストリームのバッファーリングの操作
       sprintf       書式付き出力変換
       sscanf        書式付き入力変換
       strerror      システムエラーメッセージ
       sys_errlist   システムエラーメッセージ
       sys_nerr      システムエラーメッセージ
       tempnam       テンポラリファイルの操作
       tmpfile       テンポラリファイルの操作
       tmpnam        テンポラリファイルの操作
       ungetc        入力ストリームへ 1 文字戻す。
       vfprintf      書式付き出力変換
       vfscanf       書式付き入力変換
       vprintf       書式付き出力変換
       vscanf        書式付き入力変換
       vsprintf      書式付き出力変換
       vsscanf       書式付き入力変換

準拠

       stdio ライブラリは C89 に準拠している。

関連項目

       close(2), open(2), read(2), write(2), stdout(3), unlocked_stdio(3)

この文書について

       この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部 である。プロジェクトの説明とバグ報告
       に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。

                                                   2001-12-26                                           STDIO(3)