Ho una funzione che deve essere in grado di scrivere su stdout o su un file, a seconda di ciò che l'utente desidera. Tuttavia, il valore predefinito è lo standard. Per fare questo, sto facendo il seguente (meno il controllo degli errori, ecc):È impostato un FILE * uguale a stdout portatile?
FILE* out;
if (writeToFile) { /*Code to open file*/; }
else
out = stdout;
// ...rest of the function goes here
if (out != stdout)
fclose(out);
Questo certamente fa il trucco, ma non ho idea di come portatile è. E se non lo è, e/o c'è un altro problema con esso, come dovrei andare su questo?