jammy (3) fseek.3.gz

Provided by: manpages-de-dev_4.13-4_all bug

BEZEICHNUNG

       fgetpos, fseek, fsetpos, ftell, rewind - Neupositionierung eines Streams

ÜBERSICHT

       #include <stdio.h>

       int fseek(FILE *stream, long Versatz, int woher);

       long ftell(FILE *stream);

       void rewind(FILE *stream);

       int fgetpos(FILE *stream, fpos_t *pos);

       int fsetpos(FILE *stream, const fpos_t *pos);

BESCHREIBUNG

       Die  Funktion  fseek() setzt den Datei-Positionszeiger für den Stream stream. Die neue, in Byte gemessene
       Position ergibt sich durch die Addition von Versatz zu der durch woher angegebenen Position.  Wenn  woher
       auf  SEEK_SET, SEEK_CUR oder SEEK_END gesetzt ist, ist der Versatz relativ zum Dateianfang, der aktuellen
       Position oder dem Dateiende. Ein erfolgreicher Aufruf von fseek()  löscht  den  Dateiendezeiger  für  den
       Stream und macht alle Auswirkungen der Funktion ungetc(3) für den Stream rückgängig.

       Die  Funktion  ftell()  beschafft  den  aktuellen  Wert des Dateipositionszeigers für den Stream, auf den
       stream zeigt.

       Die Funktion rewind() setzt den Dateipositionszeiger für den  Stream,  auf  den  stream  zeigt,  auf  den
       Dateianfang. Sie ist äquivalent zu

              (void) fseek(stream, 0L, SEEK_SET)

       löscht aber zusätzlich den Fehlerindikator für den Stream (siehe clearerr(3)).

       Die  Funktionen  fgetpos()  und fsetpos() sind alternative Schnittstellen und gleichwertig zu ftell() und
       fseek() (mit woher auf SEEK_SET gesetzt).  Sie  bestimmen  den  aktuellen  Wert  des  Dateiversatzes  und
       speichern  ihn  in oder von dem durch pos referenzierten Objekt. Auf einigen Nicht-UNIX-Systemen kann ein
       Objekt fpos_t ein komplexes Objekt sein. Diese Routinen können der einzige Weg  sein,  einen  Text-Stream
       portabel neu zu positionieren.

RÜCKGABEWERT

       Die  Funktion  rewind()  gibt  keinen  Wert zurück. Bei erfolgreichem Abschluss geben fgetpos(), fseek(),
       fsetpos() 0 zurück; ftell() den aktuellen Versatz. Anderenfalls wird -1 zurückgegeben und errno  gesetzt,
       um den Fehler anzuzeigen.

FEHLER

       EINVAL Das  Argument  woher für fseek() war nicht SEEK_SET, SEEK_END oder SEEK_CUR. Oder: der entstehende
              Datei-Versatz wäre negativ.

       ESPIPE Der stream unterliegende Dateideskriptor sockfd ist nicht durchsuchbar (er bezieht sich  z.B.  auf
              eine Pipe, ein FIFO oder Socket).

       Die  Funktionen  fgetpos(),  fseek(),  fsetpos()  und ftell() können auch fehlschlagen und errno für alle
       Fehler setzen, die für die Routinen fflush(3), fstat(2), lseek(2) und malloc(3) festgelegt sind.

ATTRIBUTE

       Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.

       ┌────────────────────────────┬───────────────────────┬─────────┐
       │SchnittstelleAttributWert    │
       ├────────────────────────────┼───────────────────────┼─────────┤
       │fseek(), ftell(), rewind(), │ Multithread-Fähigkeit │ MT-Safe │
       │fgetpos(), fsetpos()        │                       │         │
       └────────────────────────────┴───────────────────────┴─────────┘

KONFORM ZU

       POSIX.1-2001, POSIX.1-2008, C89, C99.

SIEHE AUCH

       lseek(2), fseeko(3)

KOLOPHON

       Diese Seite ist Teil der Veröffentlichung  5.10  des  Projekts  Linux-man-pages.  Eine  Beschreibung  des
       Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden
       sich unter https://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die deutsche Übersetzung dieser Handbuchseite wurde von Patrick Rother  <krd@gulu.net>,  Martin  Eberhard
       Schauer <Martin.E.Schauer@gmx.de> und Mario Blättermann <mario.blaettermann@gmail.com> erstellt.

       Diese  Übersetzung  ist  Freie  Dokumentation;  lesen  Sie  die  GNU  General  Public  License  Version 3
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE
       HAFTUNG übernommen.

       Wenn  Sie  Fehler  in  der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die
       Mailingliste der Übersetzer ⟨debian-l10n-german@lists.debian.org⟩.