Provided by: manpages-fr-dev_4.19.0-7_all bug

NOM

       fgetpos, fseek, fsetpos, ftell, rewind - Positionner un flux

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #include <stdio.h>

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

       void rewind(FILE *stream);

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

DESCRIPTION

       La  fonction  fseek()  définit  l'indicateur  de  position  du  flux pointé par stream. La
       nouvelle position, mesurée en octets, est obtenue en additionnant offset octets  au  point
       de  départ  indiqué par whence. Si whence vaut SEEK_SET, SEEK_CUR ou SEEK_END, le point de
       départ correspond respectivement au début du fichier, à la position actuelle, ou à la  fin
       du  fichier.  Un  appel réussi à fseek() efface l'indicateur de fin de fichier du flux, et
       annule les effets de toute fonction ungetc(3) sur le même flux.

       La fonction ftell() obtient la valeur de l'indicateur  de  position  du  flux  pointé  par
       stream.

       La  fonction rewind() place l'indicateur de position du flux pointé par stream au début du
       fichier. C'est l'équivalent de :

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

       sauf que l'indicateur d'erreur du flux est également effacé (consultez clearerr(3)).

       Les fonctions fgetpos() et fsetpos() sont des alternatives  à  ftell()  et  fseek()  (avec
       whence  à SEEK_SET), en définissant et en mémorisant la valeur de l'indicateur de position
       du fichier dans ou depuis l'objet référencé par  pos.  Sur  certains  systèmes  non  UNIX,
       l'objet  fpos_t  peut  être  un  objet  complexe,  et ces routines peuvent être les seules
       méthodes possibles pour repositionner un flux de texte de manière portable.

       Si le flux fait référence à un fichier ordinaire et que l'indicateur de position  du  flux
       résultant  dépasse la taille du fichier, les écritures suivantes étendront le fichier avec
       un trou, jusqu'à l'indicateur de position, avant d'envoyer une donnée. Consultez  lseek(2)
       pour des détails sur les sémantiques de recherche de fichier.

VALEUR RENVOYÉE

       La fonction rewind() ne renvoie pas de valeur. Si elles réussissent totalement, fgetpos(),
       fseek(), fsetpos() renvoient 0, et ftell() renvoie  la  position  actuelle.  Sinon,  elles
       renvoient -1 et la variable globale errno contient le code d'erreur.

ERREURS

       EINVAL L'argument  whence  de  fseek()  n'était  ni  SEEK_SET,  ni  SEEK_END, ni SEEK_CUR.
              Autrement, le décalage du fichier aurait été négatif.

       ESPIPE Le descripteur de fichier stream sous-jacent n'est pas valide (par exemple,  il  se
              rapporte à un tube, une FIFO ou une socket).

       Les fonctions fgetpos(), fseek(), fsetpos(), et ftell() peuvent également, en cas d'échec,
       définir errno sur n'importe quelle erreur indiquée par les routines  fflush(3),  fstat(2),
       lseek(2) et malloc(3).

ATTRIBUTS

       Pour une explication des termes utilisés dans cette section, consulter attributes(7).

       ┌────────────────────────────────────────────────────────┬──────────────────────┬─────────┐
       │InterfaceAttributValeur  │
       ├────────────────────────────────────────────────────────┼──────────────────────┼─────────┤
       │fseek(), ftell(), rewind(), fgetpos(), fsetpos()        │ Sécurité des threads │ MT-Safe │
       └────────────────────────────────────────────────────────┴──────────────────────┴─────────┘

STANDARDS

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

VOIR AUSSI

       lseek(2), fseeko(3)

TRADUCTION

       La  traduction  française  de  cette  page  de  manuel  a  été créée par Christophe Blaess
       <https://www.blaess.fr/christophe/>, Stéphan  Rafin  <stephan.rafin@laposte.net>,  Thierry
       Vignaud  <tvignaud@mandriva.com>,  François Micaux, Alain Portal <aportal@univ-montp2.fr>,
       Jean-Philippe   Guérard   <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)    <jean-
       luc.coulon@wanadoo.fr>,    Julien    Cristau    <jcristau@debian.org>,    Thomas   Huriaux
       <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin
       Duneau  <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis
       Barbier  <barbier@debian.org>,  David  Prévot  <david@tilapin.org>  et  Frédéric  Hantrais
       <fhantrais@gmail.com>

       Cette  traduction  est  une  documentation libre ; veuillez vous reporter à la GNU General
       Public  License  version 3  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩   concernant   les
       conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un
       message à ⟨debian-l10n-french@lists.debian.org⟩.