C言語でバイナリ出力ファイルをどのように実現できますか?

C言語では、データをバイナリ形式でファイルに出力するには、fwrite()関数を使用します。fwrite()関数のプロトタイプは以下の通りです。

size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream);

ptrはデータを記述するためのポインターを指し、sizeは1つのデータ項目のサイズ(バイト単位)を示し、nmembは記述するデータ項目の数、streamはファイルに書き込むためのポインターを指します。

以下是一个简单的例子,展示如何将数据以二进制形式输出到文件:

#include <stdio.h>

int main() {
    FILE *fp;
    int data[] = {1, 2, 3, 4, 5};

    fp = fopen("output.bin", "wb");
    if (fp == NULL) {
        printf("Error opening file\n");
        return 1;
    }

    fwrite(data, sizeof(int), 5, fp);

    fclose(fp);

    return 0;
}

この例では、整数配列dataを定義し、”output.bin”という名前のファイルをバイナリ書き込みモード(”wb”)で開きます。そして、fwrite()関数を使って整数配列dataのデータをファイルにバイナリ形式で書き込みます。最後に、ファイルを閉じます。

そのプログラムを実行すると、”output.bin”というファイルに整数配列dataのデータがバイナリ形式で保存されます。

bannerAds