Ver Mensaje Individual
  #4 (permalink)  
Antiguo 12/05/2015, 13:58
aleixen
 
Fecha de Ingreso: abril-2015
Mensajes: 13
Antigüedad: 9 años
Puntos: 0
Mensaje Respuesta: Segmentation fault (core dumped)

Hola, cambie el código para no depender del fork, es el siguiente

Código:

#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <sys/types.h>


int main()
{
	FILE* archDeEntrada= fopen("datosDeEntrada.txt","r");
	FILE* archTemporal = fopen("archivoTemporal.txt","w");

	char* rdo =malloc(4);

	dup2(fileno(archDeEntrada),STDIN_FILENO);
    dup2(fileno(archTemporal),STDOUT_FILENO);

    fread(rdo,5,1,archDeEntrada);

    system("/home/utnso/workspace/EjemplosC/Debug/./EjemplosC ");


	close(fileno(archDeEntrada));
	close(fileno(archTemporal));
	fclose(archDeEntrada);
	fclose(archTemporal);
	
        free(rdo);
	



	return 0;
}
sigo teniendo el mismo problema, pero esta vez se donde ocurre cuando se cierran los archivos, yo lo que busco es alimentar la entrada de datos del ejecutable EjemplosC cambiando la entrada al archivo archDeEntrada, luego la salida de lo que ejecute se redirecciona al archivoTemporal. Les paso el codigo del EjemplosC


Código:
int main(int argc, char **argv) {


	printf("%s\n",argv[1]);


return EXIT_SUCCESS;

}
En fin ya trate varias veces y me sigue dando segmentation fault, lo que deberia pasar es que en el archivo temporal termine escrita la palabra "hola".(que por cierto, es el contenido del archivo de entrada)