0

以下は、ファイルにデータを挿入するための私のコードです

注:recordその名前の構造が1つあります

fwrite(&record, sizeof(record),1,fptr);

上記のコードをループで使用して、複数のレコードを入力します。これで、データ読み取りプログラムが次のようになりました。

do {
fread(&record, sizeof(record), 1, fptr);
printf("\nName: %s \nAddress: %s \nClass Level: %d \nTelepone: %ld",record.name, record.address, record.classlevel, record.telephone);
}while (feof(fptr));

ただし、最初のレコードのみが表示されます。

fseek()また、次のように使用してみました。

do {
fread(&record, sizeof(record), 1, fptr);
printf("\nName: %s \nAddress: %s \nClass Level: %d \nTelepone: %ld",record.name, record.address, record.classlevel, record.telephone);
fseek(fptr,sizeof(record)+1, SEEK_SET);
}while (feof(fptr));

それでも うまくいかなかった!私は C で小さなプロジェクトを実行しようとしていますが、このファイル処理は神経質になっています。

4

1 に答える 1

4

これを変える:

while (feof(fptr))

これに:

while (!feof(fptr))
于 2012-11-23T17:39:30.363 に答える