Ciao a tutti
Ho bisogno di leggere da programma C un file qualsiasi ( .txt, .bmp, .wav, .exe, non importa quale) e poi, mediante operazioni di scrittura, ricrearlo tale e quale. In pratica voglio ricopiare tutti i bit (o, meglio, tutti i byte) del file.
Ho in realtà anche elaborato una soluzione, ma non so se è poco elegante o concettualmente sbagliata. Se qualcuno più esperto mi dà un parere mi fa un piacere:



codice:
      char byte[MAX];
      int data_length,num;
      
      FILE *fin,*fout;
      fin = fopen("Immagine.bmp","r");
      data_length = fread(byte,1,MAX,fin);
      

      fout = fopen("Immagine2.bmp","a");
      if (fout==NULL)
      {	 printf("Errore in apertura del file\n");
       	 exit(1);
      }

      num=fwrite(byte,1,data_length,fout);

Voi che ne dite?