そんなこと知ってる
fwrite(&variable,sizeof(datatype),<count>,<filepointer>);
データをバイナリ ファイルに書き込みます。しかし、文字 'c' を (バッファー変数を使用せずに) バイナリ ファイルに直接書き込みたい場合はどうすればよいでしょうか。置けない、
fwrite(&'c',sizeof(datatype),<count>,<filepointer>);
これは可能ですか?
そんなこと知ってる
fwrite(&variable,sizeof(datatype),<count>,<filepointer>);
データをバイナリ ファイルに書き込みます。しかし、文字 'c' を (バッファー変数を使用せずに) バイナリ ファイルに直接書き込みたい場合はどうすればよいでしょうか。置けない、
fwrite(&'c',sizeof(datatype),<count>,<filepointer>);
これは可能ですか?
putc または fputc を使用します (どちらも同じ署名を持っています)。
int putc(int c, FILE *stream);
putc と fputc に興味がある場合は、以下のコメントをチェックしてください。彼らは私よりもよく知っています :)
ではC
、定数のアドレスを取得できません。いいえ、できません。
試す
fwrite("c",sizeof(datatype),<count>,<filepointer>);
例えば
fwrite("c",1,1,fileptr);
注:私は自分でテストしていません。しかし、これは機能するはずだと思います。
エリックによるコメントの後に追加:
fwrite((char []){'c'}, 1, 1, fileptr);
^^このアプローチの利点は、char と同様に、整数やその他の標準データ型も挿入できることです。