/*
 * Cópia de dois arquivos.
 */
#include<stdio.h>

#define TAM_BLOCO 512

int main (int argc, char* argv[]) {
  FILE *fr, *fw;
  int nr, nw;
  char bloco[TAM_BLOCO];
  
  if (argc < 3) {
    printf("Uso: %s <arq_origem> <arq_destino>\n", argv[0]); 
    return 1;
  }

  fr = fopen (argv[1], "r");

  if (fr == NULL) {
    perror(argv[1]);
    return 2;
  }

  fw = fopen (argv[2], "w");

  if (fw == NULL) {
    perror(argv[2]);
    return 3;
  }
  
  do {
    nr = fread(bloco, sizeof(char), TAM_BLOCO, fr);
    nw = fwrite(bloco, sizeof(char), nr, fw);
  } while (!feof(fr));

  fclose(fr);
  fclose(fw);
  
  return 0;
}