Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

fgetpos

obtiene el indicador de la archivo-posición de una secuencia.

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

stream

Secuencia de destino.

pos

almacenamiento de Posición-indicador.

Si es correcto, fgetpos devuelve 0. En el error, devuelve un valor distinto de cero y establece errno a una de las constantes de manifiesto siguientes (definido en STDIO.H): EBADF, lo que significa que la secuencia especificada no es un puntero de archivo válido o no es accesible, o EINVAL, que significa que el valor de stream o el valor de pos es válida, por ejemplo si alguno es puntero NULL. Si stream o pos es un puntero de NULL , la función invoca el controlador no válido de parámetro, tal y como se describe en Validación de parámetros.

La función de fgetpos obtiene el valor actual del indicador de la archivo-posición de argumento de stream y lo almacena en el objeto indicada por pos. La función de fsetpos puede utilizar después la información almacenada en pos para restaurar el puntero de argumento de stream a su posición cuando fgetpos se llamó. El valor de pos se almacena en un formato interno y se ha diseñado para su uso con por fgetpos y fsetpos.

Función

Encabezado necesario

fgetpos

<stdio.h>

Para obtener información adicional de compatibilidad, vea compatibilidad en la Introducción.

// 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 );
}

fgetpos gets a stream's file-position indicator.

70hdhh4t.collapse_all(es-es,VS.110).gifsalida crt_fgetpos.txt

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

Adiciones de comunidad

AGREGAR
Mostrar: