_tell, _telli64

파일 포인터의 위치를 가져옵니다.

구문

long _tell(
   int handle
);
__int64 _telli64(
   int handle
);

매개 변수

handle
열려 있는 파일을 참조하는 파일 설명자입니다.

반환 값

파일 포인터의 현재 위치입니다. 검색을 수행할 수 없는 디바이스에서는 반환 값이 정의되지 않습니다.

반환 값 -1L은 오류를 나타냅니다. 잘못된 파일 설명자인 경우 handle 매개 변수 유효성 검사에 설명된 대로 잘못된 매개 변수 처리기가 호출됩니다. 계속해서 실행하도록 허용된 경우 이러한 함수는 errnoEBADF로 설정하고 -1L을 반환합니다.

반환 코드에 대한 자세한 내용은 , , 및 를 참조하세요errno._sys_nerr_sys_errlist_doserrno

설명

_tell 함수는 handle 인수와 관련된 파일 포인터(있는 경우)의 현재 위치를 가져옵니다. 위치는 파일의 시작 부분에서 바이트 수로 표현됩니다. _telli64 함수에 대해 이 값은 64비트 정수로 표현됩니다.

기본적으로 이 함수의 전역 상태는 애플리케이션으로 범위가 지정됩니다. 이 동작을 변경하려면 CRT의 전역 상태를 참조하세요.

요구 사항

루틴에서 반환된 값 필수 헤더
_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.

출력

Current file position is: 20

참고 항목

하위 수준 I/O
ftell, _ftelli64
_lseek, _lseeki64