Quindi non sono completamente sicuro di come usare fread. Ho un file binario in little-endian che ho bisogno di convertire in big-endian, e non so come leggere il file. Ecco quello che ho finora:Come fa a sapere quando il file è finito in C?
FILE *in_file=fopen(filename, "rb");
char buffer[4];
while(in_file!=EOF){
fread(buffer, 4, 1, in_file);
//convert to big-endian.
//write to output file.
}
non ho ancora scritto nulla altra cosa, ma io non sono solo sicuro di come ottenere fread di 'progresso', per così dire. Qualsiasi aiuto sarebbe apprezzato.
Completa il programma ed eseguilo! 'fread' leggerà da dove è stato interrotto l'ultima volta il ciclo. Dovresti controllare il valore di ritorno da 'fread'. non è probabile che 'infile' sia paragonabile a' EOF'. –
Il primo passo per progredire è ** leggere la documentazione **. –
Per uno, "rb" significa ** R ** ead ** B ** inary, quindi l'array dovrebbe essere di tipo int, non char. – MarcusJ