Using fseek () with append

Ich versuche, diesen Code zu verwenden, aber anstatt die Datei zu überschreiben, möchte ich sie nur anhängen. Wenn ich jedoch den Modus "a" oder "a +" verwende, scheint der fseek nicht zu funktionieren. Anstatt wie erwartet in die Datei "This is C Programming Langauge" zu schreiben, wird "This is tutorialspoint.com C Programming Langauge" geschrieben. Was kann ich tun, um die Datei nicht zu überschreiben?

Ich möchte in der Lage sein, eine Datei mit bereits enthaltenem Text zu öffnen, den Dateizeiger auf einen bestimmten Punkt zu setzen und Text an diesen Punkt zu schreiben, ohne etwas anderes in der Datei zu überschreiben.

int main ()
{
  FILE *fp;

  fp = fopen("file.txt","w+");
  fputs("This is tutorialspoint.com", fp);

  fseek( fp, 7, SEEK_SET );
  fputs(" C Programming Langauge", fp);
  fclose(fp);

  return(0);
}

Antworten auf die Frage(1)

Ihre Antwort auf die Frage