English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Biblioteca Padrão do C - <stdio.h>
Função da biblioteca C int fgetpos(FILE *stream, fpos_t *pos) Obter fluxo stream a posição atual do arquivo, e escreve-a em pos.
Aqui está a declaração da função fgetpos().
int fgetpos(FILE *stream, fpos_t *pos)
Se for bem-sucedido, a função retorna zero. Se ocorrer um erro, ela retorna um valor não nulo.
O exemplo a seguir demonstra o uso da função fgetpos().
#include <stdio.h> int main () { FILE *fp; fpos_t position; fp = fopen("file.txt","w+"); fgetpos(fp, &position); fputs("Hello, World!", fp); fsetpos(fp, &position); fputs("Isso cobrirá o conteúdo anterior", fp); fclose(fp); return(0); }
Vamos compilar e executar o programa acima, isso criará um arquivo file.txtSeu conteúdo é o seguinte. Primeiro usamos fgetpos() A função para obter a posição inicial do arquivo, em seguida, escrevemos no arquivo Hello, World!E, em seguida, usamos fsetpos() A função para resetar o ponteiro de escrita para o início do arquivo, reescrevendo o arquivo com o seguinte conteúdo:
Isso cobrirá o conteúdo anterior
Agora vamos usar o seguinte programa para visualizar o conteúdo do arquivo acima:
#include <stdio.h> int main () { FILE *fp; int c; int n = 0; fp = fopen("file.txt","r"); while(1) { c = fgetc(fp); if( feof(fp) ) { break ; } printf("%c", c); } fclose(fp); return(0); }