我有一個函數需要能夠寫入標準輸出或文件,具體取決於用戶想要的內容。它默認爲標準輸出。要做到這一點,我做了以下(減去錯誤檢查等):設置FILE *等於stdout是否便攜?
FILE* out;
if (writeToFile) { /*Code to open file*/; }
else
out = stdout;
// ...rest of the function goes here
if (out != stdout)
fclose(out);
這肯定是卓有成效的,但我不知道它是如何攜帶。如果不是,或者還有其他問題,我該怎麼辦?