Condividi tramite


fgetpos

ottiene l'indicatore posizione di un flusso.

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

Parametri

  • stream
    flusso di destinazione.

  • pos
    Archiviazione del localizzatore.

Valore restituito

Se l'operazione viene completata correttamente, fgetpos restituisce 0.In caso di errore, restituisce un valore diverso da zero e set errno su una delle costanti manifesto (definite in STDIO.H): EBADF, ovvero il flusso specificato non è un puntatore di file valido o non è accessibile, o EINVAL, che significa stream valore o il valore di pos non è valido, ad esempio se uno è un puntatore null.se stream o pos è un oggetto NULL il puntatore, la funzione viene richiamato il gestore non valido di parametro, come descritto in Convalida dei parametri.

Note

fgetpos la funzione ottiene il valore corrente di stream indicatore posizione e archivi che l'argomento nell'oggetto indicato da pos.fsetpos la funzione può informazioni di un uso successivo archiviate in pos per reimpostare stream il puntatore dell'argomento nella posizione a l fgetpos è stato chiamato.pos il valore viene archiviato in un formato interno e deve essere utilizzata solo da fgetpos e fsetpos.

Requisiti

Funzione

Intestazione di associazione

fgetpos

<stdio.h>

per informazioni di compatibilità aggiuntive, vedere compatibilità nell'introduzione.

Esempio

// crt_fgetpos.c
// This program uses fgetpos and fsetpos to
// return to a location in a file.

#include <stdio.h>

int main( void )
{
   FILE   *stream;
   fpos_t pos;
   char   buffer[20];

   if( fopen_s( &stream, "crt_fgetpos.txt", "rb" ) ) {
      perror( "Trouble opening file" );
      return -1;
   }

   // Read some data and then save the position. 
   fread( buffer, sizeof( char ), 8, stream );
   if( fgetpos( stream, &pos ) != 0 ) {
      perror( "fgetpos error" );
      return -1;
   }

   fread( buffer, sizeof( char ), 13, stream );
   printf( "after fgetpos: %.13s\n", buffer );

   // Restore to old position and read data 
   if( fsetpos( stream, &pos ) != 0 ) {
      perror( "fsetpos error" );
      return -1;
   }

   fread( buffer, sizeof( char ), 13, stream );
   printf( "after fsetpos: %.13s\n", buffer );
   fclose( stream );
}

input: crt_fgetpos.txt

fgetpos gets a stream's file-position indicator.

70hdhh4t.collapse_all(it-it,VS.110).gifcrt_fgetpos.txt di output

after fgetpos: gets a stream
after fsetpos: gets a stream

Equivalente .NET Framework

System:: I:: FILESTREAM:: Percorso

Vedere anche

Riferimenti

Flusso I/O

fsetpos