descriptores - ejercicios de archivos en lenguaje c
¿Cómo obtener un puntero ARCHIVO desde un descriptor de archivo? (3)
No hay una forma estándar de hacer esto (o lo contrario) ya que el estándar C no tiene nada que decir sobre los descriptores de archivos. Su plataforma específica puede o no proporcionar dicho mecanismo.
Estoy jugando con mkstemp (), que proporciona un descriptor de archivo, pero quiero generar salida formateada a través de fprintf (). ¿Hay alguna manera fácil de transformar el descriptor de archivo proporcionado por mkstemp () en una estructura FILE * que sea adecuada para usar con fprintf ()?
FILE* f = fdopen(d, "w");
hombre fdopen salida:
SINOPSIS
#include <stdio.h>
FILE *
fdopen(int fildes, const char *mode);
La función
fdopen()
asocia una secuencia con el descriptor de archivo existente,fildes
. El modo de la secuencia debe ser compatible con el modo del descriptor de archivo. Cuando el flujo se cierra a través defclose(3)
, se cierra también elfildes
.
Use fdopen()
:
FILE* fp = fdopen(fd, "w");