Freigeben über


_tell, _telli64

Rufen Sie die Position des Dateizeigers ab.

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

Parameter

  • handle
    Dateideskriptor, der geöffneten Datei verweist.

Rückgabewert

Die aktuelle Position des Dateizeigers. Auf den Geräten, die vom Suchen Unable sind, wird der Rückgabewert undefiniert.

Ein - Rückgabewert von 1L gibt einen Fehler an. Wenn handle ein ungültiger Dateideskriptor ist, wird der ungültige Parameterhandler aufgerufen, wie in Parametervalidierung beschrieben. Wenn die Ausführung zulässig ist, um fortzufahren, dieses Features legen Sie errno auf EBADF und wieder -1L.

Weitere Informationen zu diesen und anderen Rückgabecodes finden Sie unter _doserrno, errno, _sys_errlist und _sys_nerr.

Hinweise

Die _tell-Funktion ruft die aktuelle Position des Dateizeigers (falls vorhanden) zugeordnet mit dem Argument handle ab. Die Position ist als die Anzahl der Bytes vom Anfang der Datei angegeben. Für die Funktion _telli64 wird dieser Wert als 64-Bit-Ganzzahl ausgedrückt.

Anforderungen

Routine

Erforderlicher Header

_tell, _telli64

<io.h>

Zusätzliche Informationen zur Kompatibilität finden Sie unter Kompatibilität in der Einführung.

Beispiel

// 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 );
}

Eingabe: crt_tell.txt

Line one.
Line two.

Ausgabe

Current file position is: 20

Siehe auch

Referenz

E/A auf niedriger Ebene

ftell, _ftelli64

_lseek, _lseeki64