2
バイナリファイルで3つの名前を1行に書きたいとします。これを行う方法?例: Ivan Petrov Petrov。 私はファイルだけでイワンを書き込むことができます。このようにバイナリファイルでの書き込みCでの空白によるプログラミング
char name[50];
int sizeName;
FILE*fp;
if((fp=fopen("clients.bin","ab+"))==NULL)
{
printf("Error opening the file\n");
exit(1);
}
printf("Enter client's name: \n");
scanf("%s",name);
sizeName=strlen(name);
fwrite(&sizeName,sizeof(int),1,fp);
fwrite(name,sizeName,1,fp);
を書くが、私はすべての3つの言葉をしたい場合は?それを行う方法@
'scanf()'は、スペースに遭遇するまで入力を受け取りました。スペースのある文字列の場合は、 'fgets()'を使って読み込みます。 – Haris
'fgets(name、sizeof name、stdin);'または 'scanf("%49 [^ \ n]%* c "、name);' – BLUEPIXY