next up previous contents
Next: fclose()関数 Up: ファイルのオープンとクローズ Previous: ファイルのオープンとクローズ   Contents

fopen()関数

fopen()関数は、ファイルとオープンし、ファイルポインタを返す関数である。 書式は下記のとおりである。


FILE *fp;
fp = fopen(”name”, mode);

ここで、fpはファイルポインタを意味し、ファイルオープン後、 ファイルへのアクセスはすべてファイルポインタを使って行なわれる。 nameはファイル名、modeは使用方法を示すモードである。

例えば、kojima.datというファイルがテキストファイルで、 読み取り専用でオープンしたい場合には、下記のようにする。


FILE *fp;
fp = fopen(”kojima.dat”, ”rt”);

モードには、基本的に、読み込み”r”、書き込み”w”、追加”a”の3種類がある。 下記に一覧を示す。


Table 3.3: ファイルオープンモード一覧
使用するモード モード 補足説明
読み込み専用 r ファイルが存在しなければならない
書き込み専用 w ファイルが存在するとそのファイルは消去されて新しく作成される
読み書き両用 r+ ランダムファイルとして任意のレコードに対して読み書きができる
  w+ ただし、任意のレコードを指定するには、fseek()関数を使用しな
    ければならない
書き込み(追加) a ファイルが存在すれば後ろに追加。なければ新規に作成される
  a+  
その他 t テキスト(アスキー)ファイルの指定
  b バイナリファイルの指定
    ただし、バイナリファイルは、OSによってデータサイズが異なる
    ことがあるので、移植を考えた場合には推奨できない

また、fopen()関数では、標準入出力をファイルポインタとして使用することが出来る。 表3.4に標準ファイルポインタの一覧を示す。


Table 3.4: 標準ファイルポインタ
ファイルポインタ 名称 補足説明
stdin 標準入力 fscanf(stdin)scanf()は同じ機能
stdout 標準出力 fprintf(stdout)printf()は同じ機能
stderr 標準エラー出力  


next up previous contents
Next: fclose()関数 Up: ファイルのオープンとクローズ Previous: ファイルのオープンとクローズ   Contents
kojima hirohisa
2001-03-05