Que tal:
Tengo un problema con el manejo de archivos en c++ (borland), verán: lo que quiero hacer es una aplicación que está en ciclo mientras no le diga que salga, en cada vuelta llama a una función que lo único que hace es abrir un archivo, leer su contenido y cerrarlo, hasta ahí todo bien, el problema es a partir de la segunda vuelta ya no funciona, uso la función fopen para abrir el archivo y fclose para cerrarlo, lo malo es que no se está cerrando ya que si miro el valor de retorno de fclose (lo hice para saber cual era el problema) es -1 y en primera ronda es cero, cuando funciona perfectamente, a que se debe el problema?.
Use fcloseall() para forzar el cierre de todo pero no pasa nada, free(puntero del archivo) y sigue igual, hay alguna manera de forzar el cierre de un archivo incondicionalmente (mientras este abierto claro)?.
Nota. la apertura y cierre del archivo se hace dentro de la función, ahí mismo declaro lo necesario para abrirlo (la variable FILE).