c言語でのfread関数の使い方は何ですか?

fread関数は、ファイルを読み取るために使われるC言語の関数であり、そのプロトタイプは以下のとおりです。

void *ptrには、size_tのサイズのデータがcount個、FILE *streamから読み込まれます。

関数の機能は指定されたファイルストリームからデータを読み取り、それをptrが指すメモリ空間に保存することです。具体的なパラメータの意味は次の通りです:

  1. ポインタは、保存するデータのメモリ領域を指す。
  2. サイズ:各データ項目のバイト数を読み取る必要があります。
  3. count: データ項目の数。
  4. stream: ファイルストリームを読み込むために指定します。

関数は、実際に読み取られたデータ項目の数を返します。成功した場合は、countパラメータと同じ数であるべきであり、そうでない場合は、読み取りに失敗したかファイルの終端に到達したことを示します。

例文:

#include <stdio.h>

int main() {
    FILE *file;
    char buffer[100];
    
    file = fopen("test.txt", "rb");
    if (file == NULL) {
        printf("打开文件失败");
        return 1;
    }
    
    size_t result = fread(buffer, sizeof(char), 10, file);
    if (result != 10) {
        printf("读取文件失败");
        return 1;
    }
    
    printf("读取的内容为:%s\n", buffer);
    
    fclose(file);
    
    return 0;
}

前述の例では、まず”test.txt”という名前のファイルをバイナリモードで開き、次に10バイトの内容をfread関数を使用して読み取り、buffer配列に保存します。最後に読み取った内容を出力します。ファイルのオープンや読み取りに失敗した場合、適切なエラーメッセージが表示されます。最後にファイルを閉じます。

bannerAds