C: Como simular um EOF?
-
12-09-2019 - |
Pergunta
Atualmente, estou lendo o livro e digitação de K & R nos exemplos da primeira seção, e há um par de exemplos como este:
while((c = getchar()) != EOF) {
//do something
}
Eu estou testando esses exemplos em uma caixa de Windows e, assim, executar os arquivos EXE compilado a partir do cmd
rápida.
Para testar o exemplo acima, como faço para simular um EOF
? Isto é, basicamente, como eu posso fazer parar o loop quando testar o exemplo do prompt de comando?
Solução
Para introduzir um EOF, use:
- ^ Z ( Ctrl Z ) no Windows
- ^ D em Unix-like sistemas
Outras dicas
Consulte EOF
Windows: Ctrl+Z
Unix :Ctrl+D
Em primeiro lugar, pressione: Ctrl ^ X, em seguida: Ctrl ^ D
Você pode EOF também simular dando explicitamente variável int um valor de -1.
Confira este código de maior clareza:
#include<stdio.h>
int main() {
// char ch=getchar()
// int ch=-1;
if(ch==EOF) { printf("\nEOF: %d",EOF); }
if((ch!=EOF)==0) { printf("\nit is equal to 0"); }
if((ch!=EOF)==1) { printf("\nit is equal to 1"); }
else { printf("\n it is equal to other value"); }
system("pause");
return 0;
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow