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.
Çıkış crt_fgetpos.txt
after fgetpos: gets a stream
after fsetpos: gets a stream
.NET Framework Eşdeğeri
System::IO::FileStream::Position