Ver Mensaje Individual
  #5 (permalink)  
Antiguo 01/04/2008, 15:54
Leber
 
Fecha de Ingreso: marzo-2008
Mensajes: 37
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: Señales en c bajo linux, AYUDA POR FAVORRR!

Read y Write no solo sirven para escribir/leer en ficheros de los de toda la vida, por ejemplo hola.txt etc..., sino que tambien se pueden redirigir a los 3 descriptores estandar.

Por ejemplo, si no se han redefinido otros descriptores estandart(de los que arranca el programa, 0->entrada estandar, 1-> salida estandart, 2-> error estandart) puede leerse de la terminal perfectamente con:

read(0,buffer,sizeof(buffer)) <- lee de la entrada estandar, es decir, el teclado. Esto ocurre porque la tty tambien es un fichero.

Aunque como Mephisto dijo, es mejor usar printf, fgets, etc, para mostrar/coger, ya que es un poco tosquillo hacerlo con write/read, aunque poder se puede jeje

Y sprintf, en algunas lineas, lo estas implementando mal, digamos que sprintf sirve para formar una ruta, cadena etc..

#
Código:
include <stdio.h>

int
main()
{

char pepe[]="Hola";
char pepo[]="Adios";
char juntos[80]; //ojo con esto, si se le mete mas da overflow

sprintf(juntos,"%s/%s",pepe,pepo);

printf("%s\n",juntos);

return 0;

}
Y da como resultado: Hola/Adios

Saludos

Última edición por Leber; 01/04/2008 a las 16:00