I/O da file

di il
2 risposte

I/O da file

Premetto che sono ancora inesperto, ma non riesco a capire come funziona l'I/O da file, mi spiego:
dovrei implementare a un codice un file chiamato ad esempio input che contiene una serie di numeri e fare in modo che ogni valore venga assunto da una variabile, che dopo un ciclo assume il valore successivo.
Tutto ciò è possibile credo, ma non capisco come usare fscanf o sscanf...

2 Risposte

  • Re: I/O da file

    Ciao!
    Prova ad usare:
    sscanf
    In questa pagina in basso trovi a cosa corrisponde la "s" prima di scanf.
    http://digilander.libero.it/uzappi/C/librerie/funzioni/scanf.html
  • Re: I/O da file

    Ananke Melior ha scritto:


    Ciao!
    Prova ad usare:
    sscanf
    Dovrebbe caricare in memoria l'intero file, penso sia un po' dispendioso..

    @skyller00

    Se il file in cui sono contenuti i numeri è fatto ad esempio come:
    
     10 7 3 4 1 29 8
    
    Puoi utilizzare fscanf come nel programmino qui sotto:
    
    #include <stdio.h>
    
    #define MAX_NUM 256
    
    int main (void)
    {
     FILE *fd;
     int numbers[MAX_NUM], j, cnt = -1;
     
     fd = fopen ("numeri.txt", "r");
     while ( fscanf (fd, "%d", &numbers[++cnt]) != EOF );
     fclose (fd);
     
     for ( j = 0; j < cnt; j++ )
            printf ("Numero %d: %d\n", j + 1, numbers[j]);
     
     return 0;
    } 
    
    Output:
    
    neckerbox@gnagnulli:~$ ./test
    Numero 1: 10
    Numero 2: 7
    Numero 3: 3
    Numero 4: 4
    Numero 5: 1
    Numero 6: 29
    Numero 7: 8
    
Devi accedere o registrarti per scrivere nel forum
2 risposte