A função fsetpos () em C ++ define o ponteiro do arquivo associado ao stream para uma determinada posição.
protótipo fsetpos ()
int fsetpos (FILE * stream, const fpos_t * pos);
A fsetpos()
função recebe um fluxo de arquivo e um ponteiro para um objeto fpos_t obtido de uma chamada a fgetpos () como seu argumento.
- Uma chamada para
fsetpos()
função cancela os efeitosungetc
e limpa o estado de final de arquivo, se estiver definido. - No caso de qualquer erro de leitura ou gravação, o indicador de erro, ou seja,
ferror
para o fluxo é definido.
É definido no arquivo de cabeçalho.
Parâmetros fsetpos ()
- stream: O stream de arquivo cuja posição deve ser definida.
- pos: valor de posição obtido de uma chamada anterior a fgetpos que indica a posição do ponteiro do arquivo naquele momento.
fsetpos () Valor de retorno
Em caso de sucesso, a fsetpos()
função retorna zero, diferente de zero caso contrário.
Exemplo: como a função fsetpos () funciona
#include int main() ( FILE *fp; fpos_t pos; int c; fp = fopen("myfile.txt","w+"); fputs("What a boring day!",fp); fgetpos(fp, &pos); fputs("The weather is bad",fp); fsetpos(fp, &pos); /* Replaces the second line by new string */ fputs("It is raining badly.",fp); rewind(fp); while(!feof(fp)) ( c = getc(fp); putchar(c); ) fclose(fp); return 0; )
Quando você executa o programa, a saída será:
Que dia chato! Está chovendo muito.