Pregunta

Actualmente estoy leyendo el libro y escribiendo K & R en los ejemplos de la primera sección, y hay un par de ejemplos como este:

while((c = getchar()) != EOF) {
    //do something
}

Estoy probando estos ejemplos en una máquina Windows y funcionando de este modo los archivos EXE compilado desde el símbolo cmd.

Para probar el ejemplo anterior, ¿cómo puedo simular un EOF? Esto es, básicamente, cómo puedo hacer la parada del bucle cuando se prueba el ejemplo de la línea de comandos?

¿Fue útil?

Solución

Para introducir un EOF, utilice:

  1. ^ Z ( Ctrl Z ) en Windows
  2. ^ D en sistemas Unix

Otros consejos

Consulte EOF

Windows: Ctrl+Z
Unix :Ctrl+D

En primer lugar, pulse: Ctrl ^ X, a continuación: Ctrl ^ D

También puede simular EOF dando explícitamente int valor de una variable de -1.

Salida este código para mayor claridad:

#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 bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top