1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

EOF

Discussão em 'Programação' iniciada por besty, 9 de Outubro de 2008. (Respostas: 7; Visualizações: 687)

  1. besty

    besty Power Member

    Provalmente isto é um pergunta um bocado á novato, mas aqui vai.

    Ando em Engenharia Electrotécnica e já tenho algumas bases de C e C++, mas queria me dedicar mais a isto, porque me interesso.

    Comecei a seguir um livro, "The C programming language" , ando a lê-lo e a fazer os exercícios. Mas logo no início deparei-me com o seguinte termo "EOF" (end-of-file), que sinceramente não conhecia.
    Aparece-me este exemplo:
    Código:
    #include <stdio.h>
    main()
    {
         long nc;
    
         nc = 0;
         while (getchar() != EOF)
                   ++nc;
         printf("%ld\n" , nc);
    }
     
    onde aparece no início do programa o seguinte comentário: count characters in input.
    Pelo que eu percebi deveria contar os caracteres que eu escrevo, mas ao teclar, por exemplo casa, e dar enter não acontece nada. È aqui que está a minha dúvida, ou não percebi nada do que o programa faz ou então não percebi bem o funcionamento do EOF. Por isso peço ajuda ou alguns esclarecimentos, se for possível.
     
    Última edição pelo moderador: 9 de Outubro de 2008
  2. timber

    timber Zwame Advisor

    EOF é o end of file

    Não quererás o EOL ?
     
  3. besty

    besty Power Member

    Não, não, é mesmo end of file, enganei-me. Pelo menos é o que está no livro. Não percebi muito bem a ideia deste EOF.
     
  4. ups

    ups Power Member

    Acho que consegues enviar o EOF pela consola atraves da combinacao de teclas ctrl-z ou ctrl-d. É qq coisa desse genero.

    Ve isto: http://bytes.com/forum/thread513029.html
     
  5. jota WA

    jota WA [email protected] Member

    Boas
    Normalmente o EOF é usado quando se pretende verificar o fim da leitura de um ficheiro!Não acho que seja usado para ler caracteres ou linhas da consola...
    Cumps
     
  6. Tyran

    Tyran Power Member

    Sim, pode ser usado, julgo ser control+z e em linux control+d

    cumpzz
     
  7. besty

    besty Power Member

    Não funciona. A unica razão que eu vejo que para não funcionar é por causa do SO, vou tentar com Linux, pode ser que assim obtenha algum resultado.
     
  8. The_True_Eue

    The_True_Eue Power Member

    Se for em Windows podes colocar o input num ficheiro e correr:
    Código:
    prog <input
    Acho que ^Z (Ctrl+Z) tambem funciona.
    ----
    Se for Linux, ^D (Ctrl+D).
     

Partilhar esta Página