C / stdio.h / fsetpos
clearerr, fclose, feof, ferror, fflush, fgetc, fgetpos, fgets, fopen, fprintf, fputc, fputs, fread, freopen, fscanf, fseek, » fsetpos, ftell, fwrite, getc, getcha, gets, perror, printf, putc, putchar, puts, remove, rename, rewind, scanf, setbuf, setvbuf, sprintf, sscanf, tmpfile, tmpnam, ungetc, vfprintf, vprintf, vsprintf,
Funcion: fsetpos()
Sintaxis:
int fsetpos(FILE *stream, const fpos_t *posicion);

Descripcion: La función fsetpos activa el indicador de posición de ficheros para el stream apuntado por stream según el valor del objeto apuntado por posicion, el cual será un valor obtenido de una llamada previa a la función fgetpos del mismo stream. Una llamada correcta a la función fsetpos despeja el indicador de final de fichero para el stream y deshace cualquier efecto producido por la función ungetc en el mismo stream. Después de una llamada a fsetpos, la siguiente operación en un stream de actualización puede ser de entrada o salida.
Ejemplo:
#include <stdio.h>
 
int main()
{
  char nombre[11] = "datos4.dat",
       mensaje[81]="Esto es nua rpueba usando fgetpos y fsetpos.";
  FILE *fichero;
  fpos_t posicion=0, comienzo;
 
  fichero = fopen( nombre, "w+" );
  printf( "Fichero: %s -> ", nombre );
  if( fichero )
    printf( "creado (ABIERTO)\n" );
  else
  {
    printf( "Error (NO ABIERTO)\n" );
    return 1;
  }
 
  fgetpos( fichero, &comienzo );
  printf( "Posicion del fichero: %d\n", posicion );
 
  fprintf( fichero, mensaje );
  printf( "\nEscrito: \"%s\"\n", mensaje );
 
  fgetpos( fichero, &posicion );
  printf( "Posicion del fichero: %d\n", posicion );
 
  fsetpos( fichero, &comienzo );
  fprintf( fichero, "%s", "Esto es una prueba" );
  printf( "Corregiendo errores...Escrito: \"Esto es una prueba\"\n" );
 
  fgetpos( fichero, &posicion );
  printf( "Posicion del fichero: %d\n", posicion );
 
  rewind( fichero );
  printf( "\"Rebobinando\" el fichero -> Vuelta al comienzo\n" );
  fgetpos( fichero, &posicion );
  printf( "Posicion del fichero: %d\n", posicion );
 
  printf( "\nLeyendo del fichero \"%s\"\n", nombre );
  fgets( mensaje, 81, fichero );
  printf( "\"%s\"\n\n", mensaje );
 
  fgetpos( fichero, &posicion );
  printf( "Posicion del fichero: %d\n", posicion );
 
  if( !fclose(fichero) )
    printf( "Fichero cerrado\n" );
  else
  {
    printf( "Error: fichero NO CERRADO\n" );
    return 1;
  }
 
  return 0;
}

Librerias C

Librerias ANSI C
   string.hcstring
   math.hcmath
   stdio.hcstdio
   time.hctime
   stdlib.hcstdlib
   ctype.hcctype
   locale.hclocale
   signal.hcsignal
   setjmp.hcsetjmp

Librerias Borland
   conio.h
   graphics.h