#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
    FILE *entrada;
    int c;
    /* Ha' argumentos suficientes? */
    if(argc != 2)
    {
        fprintf(stderr, "Tem de passar um argumento!\n");
        return EXIT_FAILURE;
    }
    /* Abrir o ficheiro de entrada (nome em argv[1], pois argv[0] contem o
       nome do programa): */
    if((entrada = fopen(argv[1], "r")) == 0)
    {
        fprintf(stderr, "Erro abrindo o ficheiro \"%s\".\n", argv[1]);
        return EXIT_FAILURE;
    }
    while((c = getc(entrada)) != EOF)
        putchar(c);
    if(ferror(stdout))
    {
        fprintf(stderr, "Erro ao escrever!\n");
        return EXIT_FAILURE;
    }
    fclose(entrada);
    return EXIT_SUCCESS;
}