Scusate, andando ad inserire il commento mi si è cancellata la riga dove inserivo il valore nella variabile app
L'istruzione eraQuindi il ciclo esatto ècodice:strcpy(app,rec.data);
codice:while(!feof(fp)) { strcpy(app,rec.data); /*omettendo questa riga il problema non si presenta*/ now=julianDate(app);/*giorno giuliano del movimento attuale*/ if((rec.visible==true)&&(now<max))/*se il movimento non è nascosto ed è precedente alla data*/ { rec.visible=false;/*rendo il movimento non visibile */ fseek(fp,-sizeof(struct movimento),SEEK_CUR);/*sposto il puntatore indietro di un record*/ fwrite(&rec,sizeof(struct movimento),1,fp);/*e sovrascrivo*/ } fread(&rec,sizeof(struct movimento),1,fp); }
Ho anche notato che il file dove salvo la struttura diventa di dimensioni immani(da pochi KB a centinaia di MB)... può essere dovuto al fatto che il ciclo si ripeta all'infinito e quindi continua a scrivere su file?
Non capisco perchè non esce mai dal ciclo, potrebbe esserci qualche problema di valore di fp?
Il C, quant'è misterioso![]()


Rispondi quotando
