SegFault apos abrir a imagem

SegFault apos abrir a imagem

por Se Wan de Campos -
Número de respostas: 3

Coloquei um printf no arquivo io.c, depois de

fprintf(stdout, "Arquivo '%s' com a imagem foi aberto.\n", nomeArquivo);

mas nao imprimiu esse printf.

 

./ep2 imagem3.ppm

Arquivo 'imagem3.ppm' com a imagem foi aberto.  

Falha de segmentação (imagem do núcleo gravada)   

 

Em resposta à Se Wan de Campos

Re: SegFault apos abrir a imagem

por Victor Sanches Portella -

Hum... se não me engano isso é porque seu printf não tem '\n' no final.

A stdout vai carregando tudo em um buffer, e só vai mostar o que está no buffer quando mandam ela mostrar ou quando chega em uma nova linha. (Eu acho, não é 100% certeza).

Assim, você pode tentar colocar \n no final do printf. Ou talvez usar fprintf e printar na stderr que, se não me engano, essa sai "instantâneamente", ou "mandar" a stdout mostrar o que esta no buffer, que seria o comando:

fflush(stdout);

Então acho que vai precisar de mais alguns printf's pra achar o SegFault.