_tell, _telli64
Получает положение указателя файла.
long _tell(
int handle
);
__int64 _telli64(
int handle
);
Параметры
- handle
Идентификатор файла, относящийся к открытому файлу.
Возвращаемое значение
Текущее положение указателя файла.В устройствах неспособных поиск, undefined возвращаемое значение.
Возвращаемое значение - 1L указывает на ошибку.If handle недопустимый идентификатор файла недопустимого параметра вызван обработчик, как описано в разделе Проверка параметров.Если выполнение может быть продолжено, то эти функции установки errno В EBADF и извлечение -1L.
См. _doserrno, errno, _sys_errlist и _sys_nerr дополнительные сведения об этом и других, кодов возврата.
Заметки
_tell функция получает текущую позицию указателя файла (если таковые имеются), связанного с handle аргумент.Позиция выражена в виде количество байтов от начала файла.Для _telli64 функция это значение 64 (sp2) выражена в виде целого числа.
Требования
Процедура |
Обязательный заголовок |
---|---|
_tell, _telli64 |
<io.h> |
Дополнительные сведения о совместимости см. Совместимость во введении.
Пример
// 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 );
}
Вход: crt_tell.txt
Line one.
Line two.
Output
Current file position is: 20