Después de la búsqueda parece que el ascii de EOF es -1
, pero ¿cómo puedo echo
hacerlo?
Mi propósito de hacer esto es probar si se comporta igual que presionar ctrl-d
si acabo de echo
salir EOF
.
No hay forma de hacer eco de un EOF. Un EOF solo puede generarse alcanzando el final de un archivo o invocando la pulsación de tecla vinculada a la eof
configuración del terminal ( CtrlDpor defecto) cuando el archivo que se está leyendo está vinculado al terminal.
EOF
define como-1
en stdio.h? ¿por qué no podemos repetirlo si conocemos su valor ascii?int
valor con -1 (o 4294967295 si consideramos la versión sin signo) no puede ser un personaje de todos modos, ya que los caracteres solo pueden tener un valor de 0 a 255 inclusive.int
en primer lugar?fgetc(3)
página de manual.En bash, podría escribir
exec 1>&-
para cerrar el descriptor de archivo conocido como stdout.Como ya dijo Ignacio, EOF no es un personaje, por lo que la pregunta de cómo "hacer eco de EOF" no tiene ningún sentido en primer lugar. Puede hacer eco de caracteres (bytes) o puede cerrar un descriptor de archivo, pero nunca puede hacer eco de un EOF.
fuente