Ver Mensaje Individual
post #7 (permalink) Antiguo 05-mar-2010, 14:07
Cool
Cita:
Iniciado por Sam Ver Mensaje
En medio de un programa podes redirigir la entrada a otro archivo. Tenes que usar el descriptor con indice 0. por ejemplo
read(0,s,5)
si usas Scanf directamente lee desde la 0 por defecto.... entonces hay opciones que te dejan cambiar archivo que esta en el descriptar 0...pero no se como volver a poner el teclado.
No entiendo bien qué querés hacer. Yo entendí que vos querías que una vez que se acaba el archivo (redirigido) vuelva a leer desde el teclado. Si el programa está hecho para leer del teclado y lo redirigís desde un archivo, no se puede re-redirigir a otro lado.
Pero, desde el programa tenés acceso a todos los streams. En lugar de scanf(), que lee de la entrada standard (stdin), podés usar fscanf() que es igual pero en lugar de stdin lee del stream que vos le digas. Por ej:
fscanf(Archivo, "%d", &var)
fscanf(stdin, "%d", &var)
este último es lo mismo que hacer scanf("%d", &var)
__________________
a bonis ad meliora
Avatar de AlexDirect
AlexDirect
Usuario Normal
Fecha de Ingreso: ago-01
Mensajes: 841
Gracias dadas: 0
Agradecido 0 veces en 0 Mensajes
AlexDirect está desconectado
Responder Citando