[C] Scrittura e lettura della struttura in file bi

Pubblicità

bembem85

Nuovo Utente
Messaggi
23
Reazioni
0
Punteggio
25
Salve vorrei scrivere una struttura su un file binario e allo stesso tempo leggerla. Ho fatto bene? O sbaglio?

Scrittura:

Codice:
#include <stdio.h>
#include <stdlib.h>
struct persona{
 char cognome[31], nome[31], sesso[2];
 int anno;
};
struct persona leggiel();
main(){
 FILE *f; struct persona e; int fine=0;
 f=fopen("people.dat", "wb");
 while (!fine)
 { e=leggiel();
  fwrite(&e,sizeof(struct persona),1,f);
  printf("\nFine (SI=1, NO=0) ? ");
  scanf("%d", &fine);
 }
 fclose(f);
}

Lettura:

Codice:
#define DIM 30
#include <stdio.h>
#include <stdlib.h>
struct persona{
 char cognome[31], nome[31], sesso[2];
 int anno;
};
main() {
 struct persona v[DIM]; int i=0; FILE* f;
 if ((f=fopen("people.dat", "r"))==NULL) {
  printf("Il file non esiste!"); exit(1); }
 while(fread(&v[i],sizeof(struct persona),1,f)>0){
  i++;
 }
}

Ma non mi si ferma quando leggo!!!
 
hai provato a mandare a video uno dei campi della struttura ad ogni iterazione di lettura oppure il valore ritornato dalla fread?
 
Pubblicità
Pubblicità
Indietro
Top