😸

[C] fwrite 関数

に公開

機能

ファイルにバイナリデータを書き込む標準関数[1]

使用例

Hello\n と表示するバイナリファイルを作成する

\n は改行を表す エスケープシーケンス[2]

コード

FILE *fp = fopen("out.bin", "wb");
char msg[] = "Hello\n";
fwrite(msg, sizeof(char), sizeof(msg)-1, fp);
fclose(fp);
全文
#include <stdio.h>
void main() {
    FILE *fp = fopen("out.bin", "wb");
    char msg[] = "Hello\n";
    fwrite(msg, sizeof(char), sizeof(msg)-1, fp);
    fclose(fp);
}

実行結果

(バイナリエディタで out.bin を開くと Hello<0x0A>)

文字列変数strをファイルに書き込む

コード

FILE *fp = fopen("file.txt", "wb");
char str[] = "sample";
fwrite(str, sizeof(char), sizeof(str)-1, fp);
fclose(fp);
全文
#include <stdio.h>
void main() {
    FILE *fp = fopen("file.txt", "wb");
    char str[] = "sample";
    fwrite(str, sizeof(char), sizeof(str)-1, fp);
    fclose(fp);
}

実行結果

file.txt の内容: sample
脚注
  1. fwriteは、指定サイズ・個数ぶんメモリ内容をファイルに書き出す。テキスト/バイナリファイル両対応。 ↩︎

  2. 改行やタブなど、画面に表示されない制御文字のこと。 ↩︎

Discussion