_tell, _telli64
Get położenie wskaźnika pliku.
long _tell(
int handle
);
__int64 _telli64(
int handle
);
Parametry
- handle
Plik deskryptora odnoszące się do otwarcia pliku.
Wartość zwracana
Bieżąca pozycja wskaźnika pliku.Na urządzeniach niezdolny do poszukiwania wartość zwracana jest niezdefiniowany.
Zwracana wartość –1L wskazuje na błąd.Jeśli handle deskryptora nieprawidłowy plik jest wywoływana jest funkcja obsługi nieprawidłowy parametr, jak opisano w Sprawdzanie poprawności parametru.Jeśli wykonanie może kontynuować, ustaw te funkcje errno do EBADF i zwrócić wartość-1 L.
Zobacz _doserrno, errno, _sys_errlist i _sys_nerr Aby uzyskać więcej informacji na temat tego i innych, kody zwracane.
Uwagi
_tell Funkcja pobiera bieżącą pozycję wskaźnika pliku (jeśli istnieje) skojarzone z handle argument.Stanowisko jest wyrażana jako liczba bajtów od początku pliku.Dla _telli64 funkcji, ta wartość jest wyrażana jako liczba całkowita 64-bitowa.
Wymagania
Rozpoczęto wykonywanie procedury |
Wymaganego nagłówka |
---|---|
_tell, _telli64 |
<io.h> |
Aby uzyskać dodatkowe informacje o zgodności, zobacz zgodności we wprowadzeniu.
Przykład
// 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 );
}
Dane wejściowe: crt_tell.txt
Line one.
Line two.
Dane wyjściowe
Current file position is: 20