Para poder abrir un fichero dado su descriptor de fichero (
file descriptor (fd) en inglés) se ha de usar la
función fdopen
. Esta función se comporta como la función
fopen
, pero en vez de abrir un fichero dado su nombre,
usa el identificador de fichero para abrirlo:
#include <stdio.h> int fdopen(int fildes, const char *mode);
Una forma de conseguir un descriptor para un fichero es con la
función mkstemp
:
#include <stdio.h> int mkstemp(char *template);
Esta función genera un nombre de fichero temporal único a partir del
string template
. Los últimos seis caracteres de
template
deben ser “XXXXXX”
, que son
reemplazados luego por mkstemp
con una cadena que hace
que el nombre no esté repetido. Ya que será modificada,
template
no debe ser definida como constante.
La función mkstemp
devuelve el
descriptor de fichero del fichero temporal creado o -1
en
caso de error.