Aquí está mi código. Lo ejecuto en ubuntu con terminal. cuando escribo (a CtrlD) en la terminal, el programa no se detuvo, pero continuó esperando mi entrada.ctrl-d no detuvo el tiempo (getchar()! = EOF) loop
No es CtrlD igual a EOF en UNIX?
Gracias.
#include<stdio.h>
main() {
int d;
while(d=getchar()!=EOF) {
printf("\"getchar()!=EOF\" result is %d\n", d);
printf("EOF:%d\n", EOF);
}
printf("\"getchar()!=EOF\" result is %d\n", d);
}
Eso no es recursividad. Es solo un ciclo infinito hasta que EOL la entrada. Recursión = función que se llama directamente o después de algún otro número intermedio de pasos. –
Compilado con gcc, presionar '^ D' detuvo el ciclo por mí. –
@JonLin Simplemente ingrese^D. También funciona para mí. Sin embargo, cuando la entrada es (a^D), el ciclo no se detuvo. – Sam