Provided by: manpages-de-dev_2.15-1build1_all bug

BEZEICHNUNG

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

ÜBERSICHT

       #include <stdio.h>

       int fseek(FILE *stream, long offset, int whence);

       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 offset (Versatz) zu  der  durch
       whence angegebenen Position. Wenn whence 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 whence 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 whence 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.02  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  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 <debian-l10n-german@lists.debian.org>.