FREAD(3)

名前
fread, fwrite - バイナリストリームの入出力

書式
#include <stdio.h>

size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);

size_t fwrite(const void *ptr, size_t size, size_t nmemb,
              FILE *stream);

説明
fread() 関数は stream ポインターで指定されたストリームから nmemb 個のデータを読み込み、 ptr で与えられた場所に格納する。 個々のデータは size バイトの長さを持つ。

fwrite() 関数は ptr で指定された場所から得た nmemb 個のデータを、 stream ポインターで指定されたストリームに書き込む。 個々のデータは size バイトの長さを持つ。

これらの処理を停止せずに行いたいときは、 unlocked_stdio(3) を参照のこと。

返り値
成功すると、 fread() と fwrite() は読み書きを行った要素の個数を返す。 size が 1 の場合は、この数字は転送されたバイト数と等しい。 エラーが生じた場合や、ファイルの末尾 (end-of-file) に達した場合、 返り値は指定した個数よりも小さい値 (または 0) となる。

fread() は end-of-file とエラーを区別しないので、 どちらが生じたかを判断するためには、 呼び出し側で feof(3) と ferror(3) とを使用しなければならない。

準拠
C89, POSIX.1-2001.

関連項目
read(2), write(2), feof(3), ferror(3), unlocked_stdio(3)

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