|
千辛万苦写了一整天。只能用“步步惊心”来形容C语言编程……T_T
---------------------------------------------以下是输出--------------------------------------------------
RIFF: RIFF
File size: 229440
WAVE: WAVE
fmt: fmt
Format tab: 1
Channels: 2
Samples per sec: 44100
Bytes per sec: 176400
Block align: 4
Bits per sample: 16
Audio size: 229396
Header size: 44
-------------------------------------以下是main.cpp内容----------------------------------------------
#include "header.h"
using namespace::std;
int main(){
WAVHEADER whInfo;
initWavHeader(&whInfo);
readHeaderInfo("../test.wav",&whInfo);
printWavHeader(&whInfo);
}
----------------------------------------以下是header.h内容---------------------------------------------
#include <iostream>
#include <fstream>
#include <stdlib.h>
#include <string.h>
using namespace::std;
typedef unsigned short WORD;
typedef unsigned long DWORD;
typedef struct{
unsigned char chRiff[5];
DWORD dwFileSizeM8;
unsigned char chWave[5];
unsigned char chFmt[5];
unsigned char chFlt[5];
WORD wFormatTag;
WORD wChannels;
DWORD dwSamplesPerSec;
DWORD dwAvgBytesPerSec;
WORD wBlockAlign;
WORD wBitsPerSample;
DWORD dwAudioSize;
int iHeaderSize;
}WAVHEADER;
void initWavHeader(WAVHEADER *);
void printWavHeader(WAVHEADER *);
void initWavHeader(WAVHEADER *wh){
(*wh).chRiff[0] = '