BG MVC Model View Controller eğitim serisi yayında...

Ana sayfa > Programlama > C Programlama > C standart kütüphanesi > <stdio.h> > fgetpos

fgetpos() fonksiyonu

Bildirim

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

Açıklama

Akışın aktif dosya konumunu stream parametre değerinden alır ve pos parametre değişkenine yazar.

Parametreler

stream: Aktif konumu alınacak akışı tanımlayan FILE nesnesi işaretçisidir.

pos: Dosya konum göstergesinin yükleneceği fpos_t değişken işaretçidir.

Dönüş değeri

Başarı durumunda 0, aksi takdirde sıfır olmayan bir değer geri döndürülür.

Örnek


#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    FILE *fp;
    fpos_t pos;
    int id;

    if ((fp = fopen ("dosya.txt", "w+")) == NULL) {
         printf("Dosya açma hatası!");
         exit(1);
    }

    fgetpos(fp, &pos);
    printf("Dosyanın aktif konumu: %ld\n", pos);

    fputs("Bilgisayar", fp);

    fgetpos(fp, &pos);
    printf("Dosyanın aktif konumu: %ld\n", pos);

    rewind(fp);
    while ((id=getc(fp))!= EOF) { /* Dosya sonuna kadar (EOF) karakter karakter okuma işlemi */
       printf("%c", id);
    }

    fclose(fp);

    return 0;
}

Yukarıdaki örnekte, program aşağıdaki satırları ekrana yazar:

Dosyanın aktif konumu: 0
Dosyanın aktif konumu: 10
Bilgisayar

Yukarıdaki program, yazma ve okuma modunda (w+) açtığı dosyaya fputs() fonksiyonu ile yazdığı karakter dizisini dosyadan karakterleri fgetc() fonksiyonu ile tek tek okuyarak ekrana yazar.