|
|||||||
|
|
|
![]() |
|
|
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: 02:17.



















