Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Dosya işaretçisinin konumunu alın.
Sözdizimi
long _tell(
int handle
);
__int64 _telli64(
int handle
);
Parametreler
handle
Açık dosyaya başvuran dosya tanımlayıcısı.
Dönüş değeri
Dosya işaretçisinin geçerli konumu. Arama özelliği olmayan cihazlarda dönüş değeri tanımlanmamıştır.
-1L dönüş değeri bir hatayı gösterir. Geçersiz bir dosya tanımlayıcısıysahandle, parametre doğrulama bölümünde açıklandığı gibi geçersiz parametre işleyicisi çağrılır. Yürütmenin devam etmesi için izin verilirse, bu işlevler olarak EBADF ayarlanır errno ve -1L döndürür.
İade kodları hakkında daha fazla bilgi için bkz. errno, _doserrno, _sys_errlistve _sys_nerr.
Açıklamalar
İşlev, _tell bağımsız değişkenle handle ilişkili dosya işaretçisinin (varsa) geçerli konumunu alır. Konum, dosyanın başından itibaren bayt sayısı olarak ifade edilir. İşlev için _telli64 bu değer 64 bit tamsayı olarak ifade edilir.
Varsayılan olarak, bu işlevin genel durumunun kapsamı uygulama olarak belirlenmiştir. Bu davranışı değiştirmek için bkz. CRT'de Genel durum.
Gereksinimler
| Yordam | Gerekli başlık |
|---|---|
_tell, _telli64 |
<io.h> |
Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.
Örnek
// 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 );
}
Giriş: crt_tell.txt
Line one.
Line two.
Çıktı
Current file position is: 20