Aracılığıyla paylaş


fgetpos

Bir akışın dosya konum göstergesi alır.

int fgetpos( 
   FILE *stream,
   fpos_t *pos 
);

Parametreler

  • stream
    Hedef akış.

  • pos
    Depolama konumu göstergesi.

Dönüş Değeri

Başarılı olursa, fgetpos 0 döndürür.Arıza, sıfır dışında bir değere geri döndürür ve ayarlar errno aşağıdakilerden birini bildirim Sabitleri (STDIO içinde tanımlanmıştır.h): EBADF, geçerli dosya işaretçisi değil veya erişilemeyen, belirtilen stream anlamına gelir veya EINVAL, anlamına stream veya değerinin pos olan ya da bir null işaretçi ise gibi geçersiz.stream Veya pos olan bir NULL işaretçisi, işlevi çağırır geçersiz parametre işleyicisi açıklandığı gibi Parametre doğrulama.

Notlar

fgetpos İşlevi geçerli değerini alır stream baðýmsýz deðiþkenin dosya konum göstergesi ve nesne içinde gösterilen için tarafından depolarını pos.fsetpos İşlevi daha sonra depolanan bilgileri kullanmak pos sıfırlamak için stream baðýmsýz deðiþkenin işaretçinin konumuna anda fgetpos çağrıldı.pos Değer bir iç biçiminde saklanır ve yalnızca tarafından kullanılmaya yöneliktir fgetpos ve fsetpos.

Gereksinimler

İşlev

Gerekli başlık

fgetpos

<stdio.h>

Ek uyumluluk bilgileri için bkz: Uyumluluk giriş.

Örnek

// crt_fgetpos.c
// This program uses fgetpos and fsetpos to
// return to a location in a file.

#include <stdio.h>

int main( void )
{
   FILE   *stream;
   fpos_t pos;
   char   buffer[20];

   if( fopen_s( &stream, "crt_fgetpos.txt", "rb" ) ) {
      perror( "Trouble opening file" );
      return -1;
   }

   // Read some data and then save the position. 
   fread( buffer, sizeof( char ), 8, stream );
   if( fgetpos( stream, &pos ) != 0 ) {
      perror( "fgetpos error" );
      return -1;
   }

   fread( buffer, sizeof( char ), 13, stream );
   printf( "after fgetpos: %.13s\n", buffer );

   // Restore to old position and read data 
   if( fsetpos( stream, &pos ) != 0 ) {
      perror( "fsetpos error" );
      return -1;
   }

   fread( buffer, sizeof( char ), 13, stream );
   printf( "after fsetpos: %.13s\n", buffer );
   fclose( stream );
}

Giriş: crt_fgetpos.txt

fgetpos gets a stream's file-position indicator.

70hdhh4t.collapse_all(tr-tr,VS.110).gifÇıkış crt_fgetpos.txt

after fgetpos: gets a stream
after fsetpos: gets a stream

.NET Framework Eşdeğeri

System::IO::FileStream::Position

Ayrıca bkz.

Başvuru

G/ç

fsetpos