_tell, _telli64
Obtenga la posición del puntero de archivo.
long _tell(
int handle
);
__int64 _telli64(
int handle
);
Parámetros
- handle
Descriptor de archivo que hace referencia al archivo abierto.
Valor devuelto
La posición actual del puntero de archivo.En los dispositivos incapaces de búsqueda, el valor devuelto es indefinido.
un valor devuelto de – 1L indica un error.Si handle es descriptor de archivo no válido, se invoca el controlador no válido de parámetro, tal y como se describe en Validación de parámetros.Si la ejecución puede continuar, este errno establecido funciones a EBADF y retorno -1L.
Vea _doserrno, errno, _sys_errlist, y _sys_nerr para obtener más información sobre esto, y otro, códigos de retorno.
Comentarios
La función de _tell obtiene la posición actual del puntero de archivo (si existe) asociado con el argumento de handle .La posición se expresa como número de bytes desde el principio del archivo.Para la función de _telli64 , este valor se expresa como un entero de 64 bits.
Requisitos
rutina |
Encabezado necesario |
---|---|
_tell, _telli64 |
<io.h> |
Para obtener información adicional de compatibilidad, vea compatibilidad en la Introducción.
Ejemplo
// crt_tell.c
// This program uses _tell to tell the
// file pointer position after a file read.
//
#include <io.h>
#include <stdio.h>
#include <fcntl.h>
#include <share.h>
#include <string.h>
int main( void )
{
int fh;
char buffer[500];
if ( _sopen_s( &fh, "crt_tell.txt", _O_RDONLY, _SH_DENYNO, 0) )
{
char buff[50];
_strerror_s( buff, sizeof(buff), NULL );
printf( buff );
exit( -1 );
}
if( _read( fh, buffer, 500 ) > 0 )
printf( "Current file position is: %d\n", _tell( fh ) );
_close( fh );
}
entrada: crt_tell.txt
Line one.
Line two.
Output
Current file position is: 20