next up previous contents
Next: fread Up: リファレンスマニュアル Previous: for

  
fprintf

【目的】
fprintf - 書式化したデータをファイルに書き込む
【形式】
i = fprintf(fd, format, ...)    i = fprintf(file, format, ...)
   Integer i;                      Integer i;
   Integer fd;                     String file;
   String format;                  String format;
【詳細】
fprintf(fd, format, ...)は,文字列 format で指定した書式で fd = fopen()でオープンしたファイルにデータを書き込む。 整数型,実数型,文字列型のデータを出力できる。 書式は,C言語の関数 printf() の書式と同じものを指定する。 すなわち,普通の文字(アルファベット,数字,エスケープ文字) あるいは変換を表す文字列を指定する。エスケープ文字には次の ものがある。
\a : 警告(ベルなど) \v : 垂直タブ
\b : バックスペース \\ : バックスラッス
\f : 改ページ \' : アポストロフィ
\n : 復帰改行 \" : 二重引用符
\r : 復帰 \? : 疑問符
\t : 水平タブ      
変換を表すには,パーセント % ,フィールド幅(オプション),変換文字 を指定する。変換文字には,次の文字がある。
%d : 整数型
%e, %E, %f, %g : 実数型
%s : 文字列型
fprintf()は変換して出力したデータの数を返す。 fprintf(1,format, ...)は標準出力へ, fprintf(2,format, ...)は標準エラー出力へ,それぞれ出力する。 fprintf(file,format, ...)は,ファイルfileをオープンし, fortmatで指定した書式でデータを書き込み,ファイルを閉じる。 データを 1 度だけ書き込む場合は,この方法が便利である。 ただし,データを何度も書き込む場合は,ファイルのオープン とクローズが繰り返されるので効率が非常に悪い。
【例題】
ファイル afo を書き込み用にオープンし,fprintf() でデータを書き込む。
if ((fd = fopen("afo", "w")) < 0) {
    error("Can't open %s", "afo");
}
fprintf(fd, "%d %f %s", 10, 3.1415, "Hello");
fclose(fd);
【参照】
fopen(2.75), fclose(2.64), fscanf(2.82), fgets(2.69), fread(2.78), fwrite(2.84)

next up previous contents
Next: fread Up: リファレンスマニュアル Previous: for
Masanobu KOGA 平成11年10月2日