La funzione fsetpos () in C ++ imposta il puntatore del file associato al flusso in una data posizione.
prototipo fsetpos ()
int fsetpos (FILE * stream, const fpos_t * pos);
La fsetpos()
funzione accetta un flusso di file e un puntatore a un oggetto fpos_t ottenuto da una chiamata a fgetpos () come argomento.
- Una chiamata alla
fsetpos()
funzione annulla gli effettiungetc
e cancella lo stato di fine file, se impostato. - In caso di errori di lettura o scrittura,
ferror
viene impostato l'indicatore di errore, ovvero per il flusso.
È definito nel file di intestazione.
Parametri fsetpos ()
- stream: il flusso di file la cui posizione deve essere impostata.
- pos: valore di posizione ottenuto da una precedente chiamata a fgetpos che indica la posizione del puntatore del file in quel momento.
fsetpos () Restituisce il valore
In caso di successo la fsetpos()
funzione restituisce zero, altrimenti diverso da zero.
Esempio: come funziona la funzione fsetpos ()
#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 esegui il programma, l'output sarà:
Che giornata noiosa! Piove forte.