#include #include #define DEBUGint main(int argc, char *argv[]){ FILE *from, *to; char ch; /* check number of command line arguments */ if( argc != 3) { printf("Usage: copy \n"); exit(1); } /* open source file */ if((from = fopen(argv[1], "rb"))==NULL) { printf("Cannot open source file.\n"); exit(1); } /*open destination file */ if((to = fopen (argv[2], "wb")) ==NULL) { printf("Cannot open destination file.\n"); exit(1); } while(!feof(from)) { ch = fgetc(from); if(ferror(from)) { printf("Error reading source file.\n"); exit(1); } if(!feof(from)) { fputc(ch, to); } if(ferror(to)) { printf("Error writing destination file.\n"); exit(1); } } fclose(from); fclose(to); return 0;}