Visualizzazione dei risultati da 1 a 5 su 5

Discussione: [C]puntatore a file

  1. #1

    [C]puntatore a file

    Ciao a tutti...

    Ho fatto un po di programmi con i file è mi sono accorto che le funzioni che uso x leggere da file spostano automaticamente il puntatore sul file nella posizione di lettura dell'ultimo carattere...

    Io per prova ho fatto questo:
    codice:
    include<stdio.h>
    FILE *fi;
    int x;
    char cara=0;
    main() {
    fi=fopen("C:/prova1.txt","r");
    for(x=0;x<5;x++) {
    cara=fgetc(fi);
    printf("%c",cara);
    fi++;
    }
    }
    ma nn funge...

    Qualcuno mi sa spiegare perche per spostare il puntatore nel file non basta fare "fi++"?

    ciao ciao
    "Penso che nel mondo ci sia mercato per quattro o cinque computer"... Thomas Watson, presidente della IBM, 1943

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    fi è un puntatore a file, non il puntatore che indica la posizione corrente all'interno del file...



    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    ahhh ok!! grazie mille!!
    "Penso che nel mondo ci sia mercato per quattro o cinque computer"... Thomas Watson, presidente della IBM, 1943

  4. #4
    se vuoi spostare il puntatore del file, cioè spostarti all'interno del file associato allo stream, devi usare fseek()

  5. #5
    Si ok grazie mille a tutti!
    "Penso che nel mondo ci sia mercato per quattro o cinque computer"... Thomas Watson, presidente della IBM, 1943

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.