Pregunta

while(1)
{
    ch=fgetc(ft);
    if(ch==EOF)
    {
        break;
    }
    if(ch=='u')
    {
        fputc('b',ft);
        fflush(ft);
    }
}

I tried to replace character after u with b in a file pointed by *ft.

This code runs fine but when I open the file it seemed to be unedited.

The above code works fine with fseeks(ft,0,SEEK_CUR).

Why it is not working with fflush(ft).

¿Fue útil?

Solución

fflush only flushes output stream. Hence you need to put fseek(ft,0,SEEK_CUR) above your fputs(ft)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top