fwrite 関数の一般的な呼び出し形式は「fwrite(buffer,size,count,fp);」です;ここで、buffer は出力されるデータ ブロックの開始アドレス、size は各ブロックのバイト数です。 data block.number、count は毎回書き込まれるか出力されるデータ ブロックを指定するために使用され、fp はファイル ポインタです。
fwrite() は、C 言語標準ライブラリのファイル処理関数です。その機能は、指定されたファイルに複数のデータ ブロックを書き込むことです。正常に実行されると、実際に書き込まれたデータ ブロックの数を返します。この関数はバイナリ形式のファイルに対して動作し、テキスト ファイルに限定されません。
構文:
fwrite(buffer,size,count,fp)
パラメータ:
buffer は、対象となるデータです。出力 ブロックの開始アドレス
size は各データ ブロックのバイト数
count は、出力するデータを指定するために使用されます。ブロック
#fp がファイル ポインタであるたびに書き込まれたり出力されたりします。
注
(1) ストリーム fclose() は、書き込み操作 fwrite() の後に閉じる必要があります。 (2) ストリームを閉じないと、データの読み取りまたは書き込みが行われるたびに、ファイル ポインタは次に書き込みまたは読み取りされるデータの場所を指します。一般的な読み取りと書き込みのタイプ
(1) int データをファイルに書き込む#include <stdio.h> #include <stdlib.h> int main () { FILE * pFile; int buffer[] = {1, 2, 3, 4}; if((pFile = fopen ("myfile.txt", "wb"))==NULL) { printf("cant open the file"); exit(0); } //可以写多个连续的数据(这里一次写4个) fwrite (buffer , sizeof(int), 4, pFile); fclose (pFile); return 0; }
#include <stdio.h> #include <stdlib.h> int main () { FILE * fp; int buffer[4]; if((fp=fopen("myfile.txt","rb"))==NULL) { printf("cant open the file"); exit(0); } if(fread(buffer,sizeof(int),4,fp)!=4) //可以一次读取 { printf("file read error\n"); exit(0); } for(int i=0;i<4;i++) printf("%d\n",buffer[i]); return 0; }
5.構造体データの読み書き
(1)構造体データをファイルに書き込み
#include <stdio.h> #include <string.h> #include <stdlib.h> typedef struct{ int age; char name[30]; }people; int main () { FILE * pFile; int i; people per[3]; per[0].age=20;strcpy(per[0].name,"li"); per[1].age=18;strcpy(per[1].name,"wang"); per[2].age=21;strcpy(per[2].name,"zhang"); if((pFile = fopen ("myfile.txt", "wb"))==NULL) { printf("cant open the file"); exit(0); } for(i=0;i<3;i++) { if(fwrite(&per[i],sizeof(people),1,pFile)!=1) printf("file write error\n"); } fclose (pFile); return 0; }
#include <stdio.h> #include <string.h> #include <stdlib.h> typedef struct{ int age; char name[30]; }people; int main () { FILE * fp; people per; if((fp=fopen("myfile.txt","rb"))==NULL) { printf("cant open the file"); exit(0); } while(fread(&per,sizeof(people),1,fp)==1) //如果读到数据,就显示;否则退出 { printf("%d %s\n",per.age,per.name); } return 0; }
以上がfwrite 関数の一般的な呼び出し形式は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。