Я хочу прочитать 4 первых байта из бинарного файла, который является типом song.wav. В .wav-файле 4 первых байта должны быть 52-46-49-49, и я должен их прочитать, чтобы проверить позже, если они верны.Как читать byte by byte из файла
Дело в том, что у меня есть компилятор на линии прохода, в котором говорится: invalid conversion from "unsigned char" to "void"
и initialzing argument 1 of 'size_t fread(void*,size_t,size_t,FILE*)
, и я не знаю, что это значит.
В предыдущем разделе я видел, как это делается, если нужно читать байт по байту. Если кто-нибудь знает, как я могу читать байты по байтам и хранить их в массиве, который будет большим. Спасибо.
void checksong(char *argv[]){
FILE *myfile;
int i;
unsigned char k[4];
myfile=fopen(argv[2],"r");
i=0;
for(i=0; i<4; i++){
fread(k[i],1,1,myfile);
}
for(i=0; i<4; i++){
printf("%c\n", k[i]);
}
return ;
}
use 'getc()' 'char' всегда байт. –