Originariamente inviato da oregon
Per evidenziare la sostituzione dei caratteri, ecco la funzione modificata
Per risolvere il tuo problema, quello di aggiungere dati "tra" quelli gia' esistenti, devi creare un nuovo file leggendo da quello vecchio e, alla fine, eliminare il vecchio ...codice:void raddoppiaInFile (FILE *file, char c) { int car; while((car=fgetc(file))!=EOF) if(car==c) { fseek(file, 0, SEEK_CUR); fputc(car, file); fseek(file, 0, SEEK_CUR); } }
scusami ma non ho capito xke hai posizionato l'indicatore di posizione del file alla posizione corrente (con fseek) :master: ..a me sembra un'istruzione inutile (fgetc si occupa di far scorrere l'indicatore), ma dato che senza non funziona, vorrei capire perchè