Autor Tópico: falha de segmentacao (code dump) ???  (Lida 1724 vezes)

Offline DiaconoFraser

  • Usuário Ubuntu
  • *
  • Mensagens: 13
    • Ver perfil
falha de segmentacao (code dump) ???
« Online: 24 de Abril de 2008, 13:25 »
Ola a todos!
Fiz um programa que compila sem problemas so que quando executo da este erro:

Falha de segmentção (core dumped) ???

eu penso k o problema aparece quando tento fazer o rewind(fp);

ta aqui uma parte do codigo:

   fp=fopen(argv[1], "r");



        while(!feof(fp))

      {

         fscanf(fp,"%d",tmp);

         conta_tamanho++;                //conta o numero de inteiros num ficheiro!

      }

      vector = malloc(sizeof(int)*conta_tamanho); //reserva espaco pra um vector com o numero de inteiros de um  ficheiro
      
   printf("ate aki funciona!\n"); //isto aparece

   rewind(fp); //por fp a apontar para o inicio do ficheiro <--------------------falha de segmentacao

   printf("sera k esta msg aparece?\n"); //isto nao aparece

   while(!feof(fp) && i!=conta_tamanho)
   {
      printf("entra no while2");
      fscanf(fp,"%d",vector);    //escreve no vector os inteiros
      i++;
   }




Se alguem pudesse me ajudar agradecia :)

Offline IgorM0L

  • Usuário Ubuntu
  • *
  • Mensagens: 487
  • Lokos está morto. Vamos ressucitá-lo?
    • Ver perfil
    • Yrado.net
Re: falha de segmentacao (code dump) ???
« Resposta #1 Online: 25 de Abril de 2008, 11:22 »
Se voce pudesse colocar todo o codigo e usando as tags proprias para inserir codigos, ficaria mais facil de ajuda-lo.
Mas tente fazer isso:

Código: [Selecionar]
rewind(&fp);
Eu teria que saber como voce declara seu fp;
O certo seria:
Código: [Selecionar]
FILE *fp;
Lembre que esse erro eh gerado devido a tentativa de acessar uma regiao da memoria nao permitida.
« Última modificação: 25 de Abril de 2008, 12:01 por IgorM0L »

Offline DiaconoFraser

  • Usuário Ubuntu
  • *
  • Mensagens: 13
    • Ver perfil
Re: falha de segmentacao (code dump) ???
« Resposta #2 Online: 27 de Abril de 2008, 19:31 »
thanks! era so fazer o rewind msm! brigadao :)