Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - fread()impazzito o lo sarò io a breve...
Forum - C/C++ - fread()impazzito o lo sarò io a breve...

Avatar
Menin (Normal User)
Newbie


Messaggi: 10
Iscritto: 10/12/2008

Segnala al moderatore
Postato alle 0:05
Lunedì, 05/01/2009
visto che nessuno mi ha risposto all'altro post, ripongo il problema, semplificato...
cosa c'è di sbagliato in questo codice?
sembra come se l'EOF si sposti a suo piacimento..
prima mi fa vedere 25 file, poi 10, 17..e così via.. il puntatore al file si rifà ad un listato di record in cui sono memorizzati le info sui file,ho contrlollato il file e sembra a posto,anche perchè l'ho creato io con readdir() e fwrite() per salvare le info.. se qualcuno mi può dare una dritta.. grazie mille..

Codice sorgente - presumibilmente C++

  1. void leggi_lista_file(FILE *fPtr,int numero)
  2. {
  3.     int i;
  4.     struct File_in_directory file = {0,"","",0};
  5.    
  6.     printf("%-3s%-40s%-10s%-10s\n\n","N","NOME","TIPO","SIZE");    
  7.     rewind(fPtr);
  8.    while(!feof(fPtr)){
  9.         fread(&file,sizeof(struct File_in_directory),1,fPtr);
  10.    
  11.         if(file.number<10){
  12.             printf("%s%-3d%-40s%-10s%-10.2fKB\n","0",file.number,file.file_name,file.type,file.size);
  13.         }else{
  14.             printf("%-4d%-40s%-10s%-10.2fKB\n",file.number,file.file_name,file.type,file.size);
  15.             }    
  16.      }    
  17.     fclose(fPtr);

:D


Peace in Oneself Peace in the World
PM Quote
Avatar
pierotofy (Admin)
Guru^2


Messaggi: 6112
Iscritto: 04/12/2003

Segnala al moderatore
Postato alle 20:24
Martedì, 06/01/2009
Ma scusa un secondo... come fai a chiamare fread e memorizzare i dati letti in una struttura? fread non va utilizzata così.

Dai un'occhiata: http://www.cplusplus.com/reference/clibrary/cstdio/fread.html


Seguimi su Twitter: http://www.twitter.com/pierotofy

Fai quello che ti piace, e fallo bene.
PM Quote