What can go wrong in following code? #include int main(int argc, char *argv[]) { if(argc != 3) { printf("usage: %s [source] [dest]\n", argv[0]); exit(1); } char x; FILE *file[2]; file[0] = fopen(argv[1],"r+"); file[1] = fopen(argv[2],"w+"); for(x = 0; x < 2; x++) { if(file[x] == NULL) { printf("error opening file.\n"); exit(1); } } do { x = fgetc(file[0]); fputc(x,file[1]); } while(x != EOF); for(x = 0; x < 2; x++) fclose(file[x]); return 0; }