Język C++
fgetpos
[funkcja] Pobiera aktualną pozycję kursora odczytu/zapisu danych dla wskazanego strumienia.Składnia
#include <cstdio>
int fgetpos( FILE * stream, fpos_t * pos );
Argumenty
Zwracana wartość
Zwraca wartość zero w przypadku sukcesu. W przeciwnym wypadku funkcja zwraca wartość różną od zera.
Opis szczegółowy
Funkcja pobiera aktualną pozycję kursora odczytu/zapisu danych dla wskazanego strumienia. Pobrana pozycja jest zapisywana do zmiennej na którą wskazuje wskaźnik przekazany poprzez drugi argument.
Pobranej pozycji nie należy interpretować w żaden sposób, ponieważ definicja typu
fpos_t jest zależna od posiadanej implementacji biblioteki. Odczytaną pozycję (przy pomocy funkcji
fgetpos) należy wykorzystywać tylko i wyłącznie do poprawnego wywołania funkcji
fsetpos.
Dodatkowe informacje
Niektóre implementacje standardowych bibliotek C++ w przypadku wystąpienia błędu ustawiają dodatkowo kod błędu
errno. Standard nie definiuje jednak tego zachowania, więc ewentualne ustawiane kody błędów należy weryfikować w dokumentacji zgodnej z posiadanym kompilatorem.
Przykład
#include <cstdio>
void wypiszAktualnaPozycje( FILE * _pPlik )
{
fpos_t pozycja;
if( fgetpos( _pPlik, & pozycja ) != 0 )
perror( "Nie udalo sie odczytac pozycji.\n" );
else
printf( "Aktualna pozycja: %d\n", pozycja );
}
int main()
{
FILE * plik = fopen( "plik.txt", "r" );
if( plik )
{
wypiszAktualnaPozycje( plik );
char bufor[ 200 ];
fgets( bufor, 200, plik );
wypiszAktualnaPozycje( plik );
fclose( plik );
}
return 0;
}
Zagadnienia powiązane
fpos_t | Typ danych, używany do określania położenia danych w strumieniu. (alias) |
---|
fsetpos | Ustawia pozycję kursora odczytu/zapisu danych dla wskazanego strumienia. (funkcja) |
---|
ftell | Zwraca aktualną pozycję kursora odczytu/zapisu danych dla wskazanego strumienia. (funkcja) |
---|
Linki zewnętrzne
Wszystkie teksty są chronione prawami autorskimi. Kopiowanie lub rozpowszechnianie treści poza niniejszym serwisem
jest zabronione.
Powyższe ograniczenie nie dotyczy autora opracowania, któremu przysługuje prawo do rozpowszechniania własnego tekstu wedle własnego uznania.