Leitura de ficheiros em C
|
23-04-2012, 19:11
Mensagem: #1
|
|||
|
|||
Leitura de ficheiros em C
Boa tarde,
tenho de fazer um trabalho em c que tem de ler valores de um ficheiro. Não sei como contar as linhas do ficheiro e ler de lá os valores. O que tenho é: /* abertura com validação do ficheiro */ if ((ptfich = fopen (argv[1], "r")) == NULL) { fprintf (stderr, "O ficheiro %s não existe\n", argv[1]); fclose (ptfich); /* fecho do ficheiro */ return; } /*leitura da dimensao do ficheiro*/ while(fscanf (ptfich, "%d", &i) != EOF) nelem++; /* criação da sequência */ if ((sequencia = (int *) calloc (nelem, sizeof (int))) == NULL) { fprintf (stderr, "A sequência não foi criada por falta de memória\n"); return; } /* leitura dos valores do ficheiro para a sequência */ for (i = 0; i < nelem; i++) fscanf (ptfich, "%d", &sequencia[i]); fclose (ptfich); /* fecho do ficheiro */ mas os valores que ficam na sequencia são so 0's. |
|||
24-04-2012, 19:06
Mensagem: #2
|
|||
|
|||
RE: Leitura de ficheiros em C
Dicas:
1) Usa a tag code para o teu código ficar melhor formatado no post 2) Para leres o ficheiro uma linha de cada vez usa o fgets() em vez do fscanf() 3) Não sei se tens um valor por linha ou vários valores em cada linha. No caso de teres vários podes usar strtok() para "quebrar" a linha nos vários valores HTH Pedidos de ajuda via PM serão ignorados Acordo ortográfico? Desconheço, obrigado Agradeço ao Chrome o facto de os meus posts nao terem acentos |
|||
« Mais Antigo | Mais Recente »
|
Utilizadores a ver este tópico: 1 Visitante(s)