Je joue avec mkstemp (), qui fournit un descripteur de fichier, mais je veux générer une sortie formatée via fprintf (). Existe-t-il un moyen simple de transformer le descripteur de fichier fourni par mkstemp () en une structure FILE * adaptée à une utilisation avec fprintf ()?
Réponses
Trop de publicités? Utilisez fdopen()
:
FILE* fp = fdopen(fd, "w");
Gregory Pakosz
Points
35546
FILE* f = fdopen(d, "w");
sortie homme fdopen:
SYNOPSIS
#include <stdio.h>
FILE *
fdopen(int fildes, const char *mode);
La fonction
fdopen()
associe un flux au descripteur de fichier existant,fildes
. Le mode du flux doit être compatible avec le mode du descripteur de fichier. Lorsque le flux est fermé viafclose(3)
,fildes
est également fermé.