Fread

freadは、C言語の標準入出力ヘッダーファイル <stdio.h> で宣言されている関数である。
主に、バイナリ形式のファイル入力に使われる。

 形式 
ISO/IEC 9899:1999 では、以下のように定義されているISO/IEC 9899:1999 TC3 | WG14/N1256, Committee Draft | Septermber 7, 2007 | 7.19.8.1  The fread function。

 概要
 #include <stdio.h>
size_t fread(void * restrict ptr, size_t size, size_t nmemb, FILE * restrict stream);
 説明
 fread関数は、ptrが指す配列に、sizeで指定された大きさを持つ要素を最大nmemb個まで、streamが指すストリームから読み取る。各オブジェクトに対して、fgetc関数がsize回だけ呼び出され、読み取った順に、オブジェクトの上に正確に重なっているの配列に結果が格納される。ストリームのファイル位置指示子（定義されている場合）は、正常に読み取られた文字数だけ進む。エラーが発生した場合、ストリームのファイル位置指示子の結果は不定である。要素の一部だけが読み取られた場合も、その値は不定である。
 返却値
 fread関数は、読み取りに成功した要素の数を返すが、読み取りエラーが発生した場合またはEOFに到達した場合に、nmembよりも小さくなる。sizeまたはnmembがゼロの場合、freadはゼロを返し、配列の内容とストリームの状態は変更されない。

 テキストモード 
streamがテキストモードで開かれていた場合、改行コードCR+LFは読み取りの際にLFで置換される処理系もあるfread | Microsoft Docs。詳細は各処理系のリファレンスを参照のこと。

 コード例 

 脚注 
 注釈 

 出典 

 関連項目 
 fwrite
 fgetc
 標準Cライブラリ

 外部リンク 


Category:標準Cライブラリ

en:C file input/output#Overview of functions