01: // uso fscanf() per leggere parola per parola e valore di ritorno per determinare se sono a fine file
02: #include<stdio.h>
03: #include<stdlib.h>
04: 
05: int main(int argc, char **argv){
06: 
07:   FILE *fp=fopen("files/stringhe.txt", "r"); // e' lo stesso file precedentemente scritto
08:   if(!fp)
09:   {
10:     printf("Errore non riesco ad aprire il file!\n");
11:     exit(1);
12:   }
13: 
14:   char parola[1000]; // array sufficientemente "largo", ricordatevi che i byte non li pagate (per ora)
15: 
16:   while(fscanf(fp, " %s", parola) == 1) // leggo stringa fino a prima spaziatura, controllo che lettura sia andata a buon fine
17:     // fscanf() restituisce il numero di specificatori di formato che e' riuscita a leggere 
18:     // quindi, in questo caso dove la stringa di formato ne contiene uno solo, se la lettura va a buon fine restituisce 1 
19:   {
20:     printf("Ho letto [%s]\n", parola);
21:   }
22: 
23:   fclose(fp);
24: 
25:   return 0;
26: }
27: 
28: /* OUTPUT
29: Ho letto [#0:]
30: Ho letto [pippo]
31: Ho letto [#1:]
32: Ho letto [paperino]
33: Ho letto [#2:]
34: Ho letto [pluto]
35: Ho letto [#3:]
36: Ho letto [gastone]
37: Ho letto [#4:]
38: Ho letto [topolino]
39: */
40: 
41: 
42: 


Se avete commenti o osservaƶioni su questa pagina
mandate un messaggio di posta elettronica a bertoƶƶi@ce.unipr.it