我正在尝试编写一个简单的程序来读取C ++中的WAV文件并获取诸如采样率和位深之类的数据。在某些时候,我想用它来处理数据以创建音频插件,但是我想首先理解这一点。
#include <iostream>
#include <string>
#include <fstream>
#include <ostream>
using namespace std;
struct wavfile {
char id[4];
int totallength;
char wavefmt[8];
int format;
short pcm;
short channels;
int frequency;
int bytes_per_second;
short bytes_by_capture;
short bits_per_sample;
char data[4];
int bytes_in_data;
};
int main () {
FILE * wfile;
std::ofstream ofs;
wfile = ofs.open("tes.wav",std::ofstream::binary | std::ofstream::app); // line 31
ofs.close();
return 0;
}
当我尝试运行它时,它总是说“从不兼容类型'void'分配给'FILE *'(aka'__sFILE *')”
如何获取它以打开wave文件,读取数据,以便可以将其定义为struct wavfile中的一个并打印回去?
任何帮助都将不胜感激,即使只是将我指向正确的方向或指向一个好的资源。预先感谢!