私が作成しているwavファイルにPCMデータを(別のファイルで)書き込もうとしています。私はすでにヘッダーを書いていますが、それが正常に動作していることを確認しましたが、何らかの理由で未処理のデータを書き込もうとしましたが、そうではありません。私は正常にpcmファイルをバッファに読み込み、ファイルのサイズを取得しました。 fwrite()プロセスはコンパイル中にエラーを表示しませんでしたが、結果のファイルはまだ空です。どんな助けでも大歓迎です!ありがとう!PCMデータをwavファイルに書き込めません
register FILE *handle;
register FILE *lever;
char filename[] = "test.wav";
handle = fopen(filename, "w");
lever = fopen("test.pcm","rb");
fseek(lever, 0, SEEK_END);
long int lSize = ftell(lever);
printf("%i \n",lSize);
rewind(lever);
char *buffer = (char*) malloc(sizeof(char)*lSize);
if (NULL == buffer) {printf("Error creating buffer \n");}
if (lSize != fread(buffer, 1, lSize, lever)) {
printf("Reading error \n");
}
fwrite(buffer, sizeof(buffer), 1, handle);
free(buffer);
fclose(lever);
fclose(handle);
{C | C++} 1 – 111111
はsizeof(バッファ)を選択==はsizeof(チャー*) – wildplasser
'のはsizeof(文字)== 1 'によって定義。 – glglgl