[C]Dubbio sulla fscanf
Ciao a tutti, avrei un dubbio: se io ho un file come quello che segue
5
3 2 1
0 2 1
4 5 6
7 0 5
e faccio una fscanf che mi legga solo il 5 e me lo metta in una stringa
fscanf(file,"%s",numero);
Una volta fatto questo, il 5 è ancora presente nel mio file? Perchè ho provato poi a salvarmi in una matrice il file, e non mi considera il 5 , infatti parte a salvare numeri nella matrice dal 3.
Come mai?
Grazie!
5
3 2 1
0 2 1
4 5 6
7 0 5
e faccio una fscanf che mi legga solo il 5 e me lo metta in una stringa
fscanf(file,"%s",numero);
Una volta fatto questo, il 5 è ancora presente nel mio file? Perchè ho provato poi a salvarmi in una matrice il file, e non mi considera il 5 , infatti parte a salvare numeri nella matrice dal 3.
Come mai?
Grazie!
Risposte
Quando leggi il 5 si sposta in avanti un indicatore di posizione associato al file, da cui la successiva operazione parte.
Puoi usare fseek per riportarlo all'inizio del file:
Ciao!
Puoi usare fseek per riportarlo all'inizio del file:
fseek(file, 0, SEEK_SET);
Ciao!
Chiaro, grazie mille !