codice:
#include <stdio.h>
int copia_file( char *vecchio_file, char *nuovo_file);
int main()
{
char source[80], destination[80];
printf("\nInserire il file di origine: ");
gets(source);
printf("\nInserire il file di destinazione: ");
gets(destination);
if( copia_file(source, destination) == 0)
printf("\nLa copia del file è riuscita correttamente!");
else
fprintf(stderr, "\nCopia del file non riuscita");
}
int copia_file(char *vecchio_file, char *nuovo_file)
{
FILE *fold, *fnew;
int c;
if((fold = fopen(vecchio_file, "rb")) == NULL)
{
fprintf(stderr, "\nErrore nell'apertura del file");
exit(1);
}
if((fnew = fopen(nuovo_file, "rb")) == NULL)
{
fprintf(stderr, "\nErrore nell'apertura del file");
fclose(fold);
exit(1);
}
while(1)
{
c = fgetc( fold );
if( !feof( fold ) )
fputc(c,fnew);
else
break;
}
fclose(fold);
fclose(fnew);
return 0;
}
Così dovrebbe andare.....
CIAO