Autor Tópico: [Duvida] Manipulação de Ficheiros em C (Leitura)  (Lida 1997 vezes)

Offline Tiagans

  • Newbie
  • *
  • Mensagens: 0
  • Karma: +0/-0
    • Ver Perfil
[Duvida] Manipulação de Ficheiros em C (Leitura)
« em: Janeiro 29, 2009, 10:04:19 pm »
Boas malta,

Estou a fazer um programa em que preciso de gravar e ler de ficheiros Binários com Listas Genéricas, para que 2 execuções diferentes do programa não implique perca de dados.

O programa é para um consultório médico, que tem que gravar Especialidades, Médicos, Utentes e Consultas, em estruturas.

A função para gravar em ficheiros é:

void escreve(FILE *fp, PNO cabeca, int tamanho) {

  PNO ptr;
  int n = conta(cabeca);
  fwrite(&n, sizeof(int), 1, fp);
  for (ptr = cabeca; ptr; ptr = ptr-> proximo) {
        fwrite(ptr->dados, tamanho, 1, fp);
  }

}

A função que lê ficheiros é:

void lerficheiro(FILE *fp, PNO cabeca, int tamanho) {

   PNO ptr;
   int n;
   void* obj;
   fread(&n, sizeof(int), 1, fp);
   for (ptr = cabeca; ptr; ptr = ptr -> proximo) {
            obj = malloc(tamanho);
            fread(obj, tamanho, 1, fp);
            inserir(&cabeca, obj);
    }
}

Só que quando faço imprimir, após gravar em ficheiros e abrir de novo o programa, o programa não imprime.

Alguém me pode ajudar?

Obrigado
« Última modificação: Janeiro 29, 2009, 10:05:01 pm por Tiagans »

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49