|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: May 2006
Città: Monza
Messaggi: 3686
|
[C]Non capisco il significato di queste righe di codice e problema programma
Ciao, c'è un esempio per spiegare la scansione sequenziale nei file, ma non capisco una cosa
Codice:
fine = 0; LeggiIndex(fileindice, varix); while (!fine && !feof(fileindice)) {if (varix.codicef == xx) {lseek(filef, varix.posizione); LeggiForn(filef, varf); ..... fine= 1; } LeggiIndex(fileindice, varix); } } Se sapete aiutarmi Grazie
__________________
" Disprezzato e reietto dagli uomini, uomo dei dolori che ben conosce il patire, come uno davanti al quale ci si copre la faccia, era disprezzato e non ne avevamo alcuna stima." ... "Maltrattato, si lasciò umiliare e non aprì la sua bocca; era come agnello condotto al macello, come pecora muta di fronte ai suoi tosatori, e non aprì la sua bocca" Ultima modifica di stgww : 07-02-2010 alle 16:49. |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Dec 2005
Messaggi: 558
|
Continua il ciclo finché fine == 0 E finché non siamo giunti alla fine del file (feof restituisce 0 se il file non è alla fine, un valore diverso da 0 altrimenti).
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: May 2006
Città: Monza
Messaggi: 3686
|
Ok, grazie, già che ci siamo mi dai una controllata anche a questo
Codice:
#include <stdio.h> #include <stddef.h> #define MAX 10 void main() { char file1[MAX],file2[MAX]; int check=0,num1,num2; FILE *fp1,*fp2; printf("Nome file 1\n"); scanf("%s",file1); printf("Nome file 2\n"); scanf("%s",file2); if((fp1=fopen(file1,"r")==NULL) || (fp2=fopen(file2,"r"))==NULL) printf("Errore in apertura\n"); else{ rewind(fp1); rewind(fp2); while(!feof(fp1) || !feof(fp2) || !check) { fread(&num1,sizeof(int),1,fp1); fread(&num2,sizeof(int),1,fp2); if(num1!=num2) check=1; } if(check==1) printf("diversi\n"); else printf("uguali\n"); }} Grazie
__________________
" Disprezzato e reietto dagli uomini, uomo dei dolori che ben conosce il patire, come uno davanti al quale ci si copre la faccia, era disprezzato e non ne avevamo alcuna stima." ... "Maltrattato, si lasciò umiliare e non aprì la sua bocca; era come agnello condotto al macello, come pecora muta di fronte ai suoi tosatori, e non aprì la sua bocca" |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Oct 2006
Città: milano
Messaggi: 1439
|
Usi l'operatore di disgiunzione, se la prima condizione è soddisfatta evidentemente non esegue la seconda, così fp2 non è inizializzato. Ipotizzo eh, non conosco il C..
|
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Dec 2005
Messaggi: 558
|
Prima di tutto assegna i valori e POI controllali. Il primo if dovrebbe essere:
Codice:
fp1=fopen(file1,"r"); fp2=fopen(file2,"r"); if((fp1 == NULL) || (fp2 == NULL)) printf("Errore in apertura\n"); |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: May 2006
Città: Monza
Messaggi: 3686
|
Grazie, ora mi è venuto! Devo dare Informatica 1, quindi sicuramente avrò qualche altro esercizio che non mi viene, nel frattempo vi domando:
Abbiamo anche iniziato i processi e il prof ha detto che quello che ci spiegava si riferiva a Linux. quindi se uso windows la fork() la free() , execl(), etc.. non funzionano?
__________________
" Disprezzato e reietto dagli uomini, uomo dei dolori che ben conosce il patire, come uno davanti al quale ci si copre la faccia, era disprezzato e non ne avevamo alcuna stima." ... "Maltrattato, si lasciò umiliare e non aprì la sua bocca; era come agnello condotto al macello, come pecora muta di fronte ai suoi tosatori, e non aprì la sua bocca" |
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: May 2006
Città: Monza
Messaggi: 3686
|
Up per me con una nuova domanda.
Sto esercitandomi con le liste e non capisco perchè il sottoprogramma che crea la lista viene scritto in questo modo Codice:
struct elemento *crea_lista() Codice:
struct elemnto *lista; lista=crea_lista(); Grazie
__________________
" Disprezzato e reietto dagli uomini, uomo dei dolori che ben conosce il patire, come uno davanti al quale ci si copre la faccia, era disprezzato e non ne avevamo alcuna stima." ... "Maltrattato, si lasciò umiliare e non aprì la sua bocca; era come agnello condotto al macello, come pecora muta di fronte ai suoi tosatori, e non aprì la sua bocca" |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 01:25.