Hello

I have a very simple program to test pipes that gives segmentation fault and I have no idea why.

I have searched google and this forum but nothing.

Code:
#include <stdio.h> 
#include <stdlib.h> 
#include <unistd.h> 
#include <sys/wait.h> 
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <signal.h>

void worker(int fd_read, int fd_write, char* filename);

int main (void) { 
	//com_pipes pipes;
	int pipes[2];
	int flag = 0;
	int res = -1;
	int pid;
	
	pipe(pipes);
	
	pid = fork();
	
	if(pid == 0)
	{	// FILHOS
		printf("[Filhote %d]: O pai %d pediu-me para pesquisar o ficheiro %s .\n", getpid(), getppid(), "cenas");
		close(pipes[1]);
		
		write(pipes[0], &flag, sizeof(int));
		exit(0);
	}
	
	close(pipes[0]);
	read(pipes[1], &res, sizeof(int));
	printf("Vou procurar o %s.\n", res);
	
	
}
Thanks in advanced