Fórum Ubuntu Linux - PT
Suporte Técnico => Programação e Scripts => Tópico iniciado por: DiaconoFraser em 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 :)
-
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:
rewind(&fp);
Eu teria que saber como voce declara seu fp;
O certo seria:
FILE *fp;
Lembre que esse erro eh gerado devido a tentativa de acessar uma regiao da memoria nao permitida.
-
thanks! era so fazer o rewind msm! brigadao :)