FREAD(3)

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

ライブラリ
libc

書式
#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 が指すストリームから、それぞれが size バイトの大きさのオブジェクトを nmemb 個読み込み、 ptr で指定された場所に保存します。

fwrite() 関数は、 ptr で指定された場所から、それぞれが size バイトの大きさのオブジェクトを nmemb 個 stream が指すストリームに書き込みます。

戻り値
fread() 関数と fwrite() 関数は、読み書きしたバイト数だけ ストリームのファイル位置インジケータを進め、 読み書きしたオブジェクト数を返します。 エラーが発生した場合、またはファイルの終了に達した場合は、 指定したものより少ないオブジェクト数 (または 0) を返します。

fread() 関数は、ファイルの終了とエラーを区別しません。 ファイルの終了かエラーかを判断するためには、呼び出し側が feof(3) と ferror(3) を使用する必要があります。 fwrite() は、書き込みエラーが発生した場合に限って nmemb より少ない値を返します。

関連項目
read(2), write(2)

規格
fread() 関数と fwrite() 関数は、 isoC に適合しています。