Ändern Sie den vorhandenen Inhalt der Datei in c

int main()
{
    FILE *ft;
    char ch;
    ft=fopen("abc.txt","r+");
    if(ft==NULL)
    {
        printf("can not open target file\n");
        exit(1);
    }
    while(1)
    {
        ch=fgetc(ft);
        if(ch==EOF)
        {
            printf("done");
            break;
        }
        if(ch=='i')
        {
            fputc('a',ft);
        }
    }
    fclose(ft);
    return 0;
}

Wie man sieht möchte ich das bearbeitenabc.txt Sodassi wird ersetzt durcha drin.
Das Programm funktioniert aber einwandfrei wenn ich es öffneabc.txt äußerlich schien es unbearbeitet zu sein.
Irgendein möglicher Grund dafür?

Warum in diesem Fall der Charakter nachi wird nicht ersetzt durcha, wie die antworten vermuten lassen?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage