Provided by: manpages-ro-dev_4.27.0-1_all bug

NUME

       fgetpos, fseek, fsetpos, ftell, rewind - repoziționează un flux

BIBLIOTECA

       Biblioteca C standard (libc, -lc)

SINOPSIS

       #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);

DESCRIERE

       Funcția  fseek()  stabilește  indicatorul de poziție al fișierului pentru fluxul indicat de stream.  Noua
       poziție, măsurată în octeți, se obține prin adăugarea de offset octeți la poziția specificată de  whence.
       Dacă  whence  este  stabilit  la  SEEK_SET,  SEEK_CUR  sau  SEEK_END,  poziția este relativă la începutul
       fișierului, la indicatorul poziției curente sau, respectiv, la sfârșitul fișierului.  Un apel  reușit  la
       funcția  fseek()  șterge indicatorul de sfârșit de fișier al fluxului și anulează orice efect al funcției
       ungetc(3) asupra aceluiași flux.

       Funcția ftell() obține valoarea curentă a indicatorului de poziție a fișierului pentru fluxul indicat  de
       stream.

       Funcția  rewind()  stabilește  indicatorul  de  poziție  al fișierului pentru fluxul indicat de stream la
       începutul fișierului.  Este echivalentă cu:

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

       cu excepția faptului că indicatorul de eroare pentru  flux  este,  de  asemenea,  eliminat  (a  se  vedea
       clearerr(3)).

       Funcțiile  fgetpos()  ș  i  fsetpos()  sunt  interfețe alternative echivalente cu ftell() ș i fseek() (cu
       whence stabilit la SEEK_SET), care stabilesc și stochează valoarea curentă a poziției fișierului  în  sau
       din  obiectul  la care face referire pos.  Pe unele sisteme non-UNIX, un obiect fpos_t poate fi un obiect
       complex și aceste rutine pot fi singura modalitate de a repoziționa portabil un flux de text.

       În cazul în care fluxul se  referă  la  un  fișier  obișnuit  și  poziția  fluxului  rezultată  depășește
       dimensiunea  fișierului,  scrierile  ulterioare  vor  extinde  fișierul  cu  o  gaură, până la poziția de
       deplasare, înainte de a trimite orice date.  A se vedea lseek(2)  pentru  detalii  privind  semantica  de
       căutare a fișierelor.

VALOAREA RETURNATĂ

       Funcția  rewind()  nu  returnează nicio valoare.  La finalizarea cu succes, fgetpos(), fseek(), fsetpos()
       returnează 0, iar ftell() returnează poziția curentă.  În caz contrar, se returnează -1, iar  errno  este
       configurată pentru a indica eroarea.

ERORI-IEȘIRE

       EINVAL Argumentul  whence la fseek() nu a fost SEEK_SET, SEEK_END sau SEEK_CUR.  Sau: poziția rezultată a
              fișierului ar fi fost negativă.

       ESPIPE Descriptorul de fișier care stă la baza stream nu poate fi căutat (de  exemplu,  se  referă  la  o
              conductă, FIFO sau soclu).

       Funcțiile  fgetpos(),  fseek(),  fsetpos() și ftell() pot, de asemenea, să eșueze și să configureze errno
       pentru oricare dintre erorile specificate pentru rutinele fflush(3), fstat(2), lseek(2) și malloc(3).

ATRIBUTE

       Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).
       ┌─────────────────────────────────────────────────────────────────────────┬───────────────────┬─────────┐
       │ InterfațăAtributValoare │
       ├─────────────────────────────────────────────────────────────────────────┼───────────────────┼─────────┤
       │ fseek(), ftell(), rewind(), fgetpos(), fsetpos()                        │ Siguranța firelor │ MT-Safe │
       └─────────────────────────────────────────────────────────────────────────┴───────────────────┴─────────┘

STANDARDE

       C11, POSIX.1-2008.

ISTORIC

       POSIX.1-2001, C89.

CONSULTAȚI ȘI

       lseek(2), fseeko(3)

TRADUCERE

       Traducerea   în   limba   română   a   acestui   manual   a   fost   făcută   de   Remus-Gabriel    Chelu
       <remusgabriel.chelu@disroot.org>

       Această  traducere  este  documentație  gratuită;  citiți  Licența publică generală GNU Versiunea 3 sau o
       versiune  ulterioară  cu  privire  la  condiții  privind  drepturile  de  autor.   NU  se   asumă   NICIO
       RESPONSABILITATE.

       Dacă  găsiți  erori  în  traducerea  acestui manual, vă rugăm să trimiteți un e-mail la translation-team-
       ro@lists.sourceforge.net.

Pagini de manual de Linux 6.9.1                    2 mai 2024                                           fseek(3)