1
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).

kevin gomes
  • 1,775
  • 5
  • 22
  • 30

1 Answers1

1

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

zee
  • 188
  • 2
  • 2
  • 9